Я пытаюсь отправить текстовые сообщения из своего серверного приложения Elasti c Beanstalk, но продолжаю получать {"Error": {"message": null, "code": 404, ...}. Я следил за кодом в документации , но все еще не могу заставить его работать.
Я следил за этим учебником YouTube и могу отправлять сообщения из моя локальная среда разработки, но, похоже, не могу воспроизвести это для моего серверного приложения. В этом руководстве докладчик создает группу IAM и пользователя IAM, а ключи сохраняются в папке .env, что, как я полагаю, заставляет все работать.
Я также предоставил свой Elasti c Beanstalk EC2 экземпляры полный доступ к SNS с использованием IAM.
Кто-нибудь может объяснить мне, как я могу воспроизвести это в моем серверном приложении? Или как я могу отправлять транзакционные текстовые сообщения с сервера node.js / express?
Это мой код:
//we have to use us-east-1 because sending texts is not allowed in us-east-2
AWS.config.update({region: 'us-east-1'});
var params = {
Message: "This is a test",
PhoneNumber: '+' + "phoneNumberGoesHere",
MessageAttributes: {
'AWS.SNS.SMS.SenderID': {
'DataType': 'String',
'StringValue': "app name goes here"
}
}
};
var publishTextPromise = new AWS.SNS({ apiVersion: '2010-03-31'}).publish(params).promise();
publishTextPromise.then(
function (data) {
console.log("Message sent successfully...... ", JSON.stringify({ MessageID: data.MessageId }))
}).catch(
function (err) {
console.log("Error sending Text Message...... ", JSON.stringify({ Error: err }))
});