amazon-web-services - "Missing credentials in config"使用 aws-amplify 存储

标签 amazon-web-services amazon-s3 aws-sdk aws-amplify

我最近从旧版本的 aws-amplify 升级到版本
"aws-amplify": "^1.0.2"
这样做时,我在尝试上传到我的存储桶时立即开始出错。[WARN] 38:42.445 StorageClass - error uploading": CredentialsError: "Missing credentials in config"
经过一番挖掘,我发现在最新版本的 aws-amplify 中,一些新的 key 被添加到存储配置中; “凭据”和“级别”。文档没有以任何方式提及这些,我无法确切地找到这个“凭证” key 需要什么值才能正常工作(手动配置身份验证和存储)。任何人都知道这个凭证对象应该是什么样的?

最佳答案

您不需要手动设置凭据 key ,Amplify 会自动设置 Storage 类的凭据。由于您的环境在更新之前工作正常,因此问题可能与 aws-sdk 有关。包。该问题与多个 aws-sdk 有关包裹在您的 node_modules文件夹。通常简单地删除 aws-sdk文件夹不起作用,因为您的项目文件已缓存。以下是如何解决 react-native 问题的步骤项目,但您可以根据您的环境调整它们:

  • 确保您没有 aws-sdk在您的 package.json 中的依赖项下文件自 aws-amplify已经包含 AWS SDK。如果有 aws-sdkpackage.json文件运行命令将其删除:
    $ npm uninstall aws-sdk --save
    
  • 确保您使用的是最新版本的 aws-amplify包裹。
  • 删除 package-lock.json项目文件夹中的文件(不要忘记创建文件的副本)。

  • $ rm -rf node_modules && npm install
    

    此命令将删除您的 node_modules文件夹并根据 package.json 重新安装所有软件包文件。
  • 或者,您可以通过一一输入以下命令来清除本地缓存:
    $ watchman watch-del-all
    $ rm -rf /tmp/haste-map-react-native-packager-*
    $ rm -rf /tmp/metro-bundler-cache-*
    
  • 关于amazon-web-services - "Missing credentials in config"使用 aws-amplify 存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51526584/

    相关文章:

    hadoop - 在 EMR 3.10 中添加步骤或引导操作以将文件从本地复制到 s3

    ios - 将图像和视频上传到亚马逊 S3(arm64 错误)

    ios - 如何使AWS框架在Xcode 11中工作?

    java - dynamoDB mapper scan() 错误 : java. lang.NullPointerException: null

    amazon-s3 - AWS S3在两个存储桶之间复制文件和文件夹

    python - AWS lambda : Python function with Pandas dependency

    amazon-web-services - 弹性beantalk上的多个docker和多个域

    django - 如何在 Heroku 上的 Django 中保存日志文件

    r - 通过 JDBC 连接到 R 中的 S3 Athena

    java - 列出AWS S3存储桶的内容