Cau*_*wer 6 amazon-s3 amazon-web-services 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 中,一些新的密钥被添加到存储配置中;“凭据”和“级别”。文档没有以任何方式提及这些,我无法确切地找到这个“凭证”密钥需要什么值才能正常工作(手动配置身份验证和存储)。任何人都知道这个凭证对象应该是什么样的?
小智 1
您无需手动设置凭据密钥,Amplify 会自动设置存储类的凭据。由于您的环境在更新之前正常工作,因此问题可能与aws-sdk软件包有关。aws-sdk该问题与文件夹中的多个包有关node_modules。一般来说,简单地删除aws-sdk文件夹是行不通的,因为您的项目文件已被缓存。以下是如何解决项目问题的步骤react-native,但您可以根据您的环境进行调整:
确保您的文件中没有aws-sdk依赖项package.json,因为aws-amplify已经包含了 AWS SDK。aws-sdk如果文件中有 ,package.json请运行命令将其删除:
$ npm uninstall aws-sdk --save
Run Code Online (Sandbox Code Playgroud)确保您使用的是最新版本的aws-amplify软件包。
从项目文件夹中删除该package-lock.json文件(不要忘记创建该文件的副本)。
跑步
$ rm -rf node_modules && npm install
Run Code Online (Sandbox Code Playgroud)
此命令将删除您的node_modules文件夹并根据该package.json文件重新安装所有软件包。
您也可以通过一一输入以下命令来清除本地缓存:
$ watchman watch-del-all
$ rm -rf /tmp/haste-map-react-native-packager-*
$ rm -rf /tmp/metro-bundler-cache-*
Run Code Online (Sandbox Code Playgroud)| 归档时间: |
|
| 查看次数: |
2811 次 |
| 最近记录: |