【问题标题】:How to read messages from aws sqs fifo queue?如何从 aws sqs fifo 队列中读取消息?
【发布时间】:2019-11-07 14:05:12
【问题描述】:

我正在尝试使用 javascript SDK 从 SQS Fifo 队列中读取数据,
我正在使用 AWS SQS SDK 的 receiveMessage 方法来做,
但是我在这样做时遇到了错误。

下面是我正在运行的代码 sn-p -

let AWS = require('aws-sdk');
let util = require('util');
AWS.config.update({region: 'us-east-1'});

let test = async() => {
    let sqs = new AWS.SQS();

    let params = {
        QueueUrl: 'sqs.us-east-1.amazonaws.com/awsAccountId/sqsQueueName.fifo'
    };

    let sqsReceiveMessage = util.promisify(sqs.receiveMessage).bind(sqs);
    let messages = await sqsReceiveMessage(params);
    console.log(messages);
};
test();

我收到以下错误 -

(node:13221) UnhandledPromiseRejectionWarning: InvalidAddress: The address sqs.us-east-1.amazonaws.com/awsAccountId/sqsQueueName.fifo is not valid for this endpoint.

以下是 SQS 队列 URL,我正在尝试阅读 -

我使用以下内容作为参考 -
1.https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/SQS.html#receiveMessage-property
2.https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/SQS.html#receiveMessage-property
3.https://www.reddit.com/r/aws/comments/5mclde/sqs_cli_aws_sqs_getqueueurl_returns_different_url/
4.https://www.bogotobogo.com/DevOps/AWS/aws-Amazon-SQS-Simple-Queue-Service-with-NodeJS-AWS-SDK.php

【问题讨论】:

  • 你试过在队列名前使用http://吗?我不使用 node.js,但在 c# 中我给它整个 url,包括 http://
  • 该死的,多么愚蠢的错误,一直在我眼前,谢谢指出。

标签: node.js amazon-web-services amazon-sqs aws-sdk-nodejs


【解决方案1】:

您是否尝试在队列名称前使用 http://?我不使用 node.js,但在 c# 中我给了它整个 url,包括 http://

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-26
    • 2018-09-24
    • 2016-04-13
    • 2018-08-29
    • 1970-01-01
    • 2018-10-06
    相关资源
    最近更新 更多