var params = {
QueueUrl: sqsEndPoint + compInfoQueName,
AttributeNames: [All],
MaxNumberOfMessages: '5',
MessageAttributeNames: [],
ReceiveRequestAttemptId: "",
VisibilityTimeout: '15',
WaitTimeSeconds: '10'
};
sqs.receiveMessage(params, function (err, data) {
if (err) console.log(err, err.stack);
else return data;
});
从 AWS 网站获得此内容
我已经设置了所有参数,可以使用以下命令在 html 页面上获得响应:
https://sqs.us-west-2.amazonaws.com/ACCOUNT/QUEUENAME";
但是我想将其集成到节点.js项目中
我是javascript的新手,在java中,我只会导入AWS对象并在函数中调用方法,即。
功能。。。 {JSON response = sqs.receive... }
如何在 JS 中使用顶部的代码?
如何使用代码示例将字符串对象设置为接收的结果?
我只想将 html 页面中的一个字段设置为收到的 sqs 消息
textarea.value = myMessageFromAWS
由于您来自Java,因此回调不是很直观。
我建议您使用 async/await 方法,以便代码看起来更线性,如下所示:
async function main () {
var params = {
QueueUrl: sqsEndPoint + compInfoQueName,
AttributeNames: [All],
MaxNumberOfMessages: '5',
MessageAttributeNames: [],
ReceiveRequestAttemptId: "",
VisibilityTimeout: '15',
WaitTimeSeconds: '10'
};
try {
// this will be your data received from sqs
const data = await sqs.receiveMessage(params).promise()
// prints to stdout
console.log(data)
} catch(err) {
// prints to stderr
console.error(err, err.stack);
};
}
// Because this is not Java you have to call this function explicitly
main()