当我尝试在我的项目中使用 Aws 凭据时,它给出了一个错误,我很难找到解决方案,当我在同一个文件中使用凭据时,它可以工作,但是当我尝试使用时。这是我尝试过的代码
const AWS = require('aws-sdk');
const SESConfig = {
apiVersion: "2010-12-01",
accessKeyId: process.env.AWS_SECRET_KEY,
accessSecretKey: process.env.AWS_SECRET_KEY,
region: "us-east-1"
}
AWS.config.update(SESConfig);
var sns = new AWS.SNS()
var sns = new AWS.SNS();
function sendSMS(to_number, message, cb) {
sns.publish({
Message: message,
Subject: 'Admin',
PhoneNumber:to_number
}, cb);
}
// Example
const PhoneNumberArray = ['any mobile number']
PhoneNumberArray.forEach(number => {
sendSMS(number, "Lorem Ipsum is simply dummy text of the printing and typesetting industry.", (err, result)=>{
console.log("RESULTS: ",err,result)
})
})
最佳答案
默认情况下,开发工具包会检测在您的环境中设置的 AWS 凭证,并使用它们签署对 AWS 的请求。这样你就不需要在你的应用程序中管理凭据。
Unix:
$ export AWS_ACCESS_KEY_ID="your_key_id"
$ export AWS_SECRET_ACCESS_KEY="your_secret_key"
视窗:> set AWS_ACCESS_KEY_ID="your_key_id"
> set AWS_SECRET_ACCESS_KEY="your_secret_key"
您也可以添加 $ export AWS_SESSION_TOKEN='your_token'
(可选的)见 aws-sdk更多细节。
或创建一个
~/.aws/credentials
文件并添加:[default]
aws_access_key_id = <YOUR_ACCESS_KEY_ID>
aws_secret_access_key = <YOUR_SECRET_ACCESS_KEY>
见 aws更多细节。
关于node.js - 配置中缺少凭据,如果使用 AWS_CONFIG_FILE,请设置 AWS_SDK_LOAD_CONFIG=1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61028751/