Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 使用SQS专用端点批量发送消息_Node.js_Aws Lambda_Amazon Sqs_Amazon Vpc_Endpoint - Fatal编程技术网

Node.js 使用SQS专用端点批量发送消息

Node.js 使用SQS专用端点批量发送消息,node.js,aws-lambda,amazon-sqs,amazon-vpc,endpoint,Node.js,Aws Lambda,Amazon Sqs,Amazon Vpc,Endpoint,我正在使用nodejs,我需要使用sendMessageBatch函数将批量消息发送到SQS队列。将消息推送到SQS的lambda位于VPC内部,因此我需要使用SQS的私有端点。 任何人都可以帮助了解如何包含端点的语法。 我可以使用以下示例推送: 但是,这并不是使用私有端点 const splitArray = require("split-array"); async function sendMessages(queueUrl, messages) { const

我正在使用nodejs,我需要使用sendMessageBatch函数将批量消息发送到SQS队列。将消息推送到SQS的lambda位于VPC内部,因此我需要使用SQS的私有端点。 任何人都可以帮助了解如何包含端点的语法。 我可以使用以下示例推送: 但是,这并不是使用私有端点

const splitArray = require("split-array");

async function sendMessages(queueUrl, messages) {
  const spilttedArray = splitArray(messages, 10);
  for (const arr of spilttedArray) {
    var params = {
      QueueUrl: queueUrl,
      Entries: []
    };
    for (const message of arr) {
      params.Entries.push({
        Id: uuid.v4(),
        MessageBody: JSON.stringify(message)
      });
    }
    await sqs.sendMessageBatch(params).promise();
  }
}
你试过这个吗?您可以将端点作为参数传递给SQS客户机

const sqs = new AWS.SQS({endpoint: 'https://my-vpc-url.com'}) // credentials also
// everything else
await sqs.sendMessageBatch(params).promise();

如果已配置VPC端点,则它应自动工作。运行Lambda函数时会发生什么?