首页 > 解决方案 > 无法从 AWS ECS 任务(awsvpc 网络模式)向 Twilio 发送请求

问题描述

我正在使用 AWS - ECS 服务,并且我在已启动为awsvpc网络模式的集群上有 5 个正在运行的任务。

问题是该任务应该向TwilioSMS 代码发送请求,但对 Twilio 的请求却超时了。

  const twilioClient = require('twilio')(accountSid, authToken)
  try {
    await twilioClient.messages.create({
      body: `${code}`,
      from: phoneNumber,
      to: userInput.phone
    })
  } catch (err) {
    console.log('Twilio Error: ', err)
    return false
  }

下面的错误显示了我在 CloudWatch 上登录的错误。

Twilio Error: { 
Error: ETIMEDOUT
at Timeout._onTimeout (/srv/node_modules/request/request.js:849:19)
ontimeout (timers.js:436:11)
at tryOnTimeout (timers.js:300:5)
at listOnTimeout (timers.js:263:5)
at Timer.processTimers (timers.js:223:10) code: 'ETIMEDOUT', connect: true
}

问题是相同的代码适用于defaultAWS ECS 上的 Task 的网络模式。

我正在使用EC2模式,而不是Fargate模式。期待这方面的正确帮助。干杯。

标签: amazon-web-servicestwilioamazon-ecsamazon-vpcaws-security-group

解决方案


推荐阅读