Не удается вызвать внешний api в aws лямбда-функции - PullRequest
0 голосов
/ 01 августа 2020

Я собирался вызвать сторонний api в лямбда-функции aws с запросом. Но показывает ошибку тайм-аута. Я установил время лямбда-функции 30 секунд, и когда я вызываю этот api с помощью почтальона, он отправляет ответ (ошибку) через 5 секунд. Я думаю, что запрос или ax ios не может отправить запрос на внешний api или не может получить ответ. Может кто-нибудь помочь мне? Мой код:

  request.post({url:url2, json:true, body:body, headers: {
    'ACCESS_TIMESTAMP': timestamp,
    'Content-Type': 'application/json'
  } }, (error, response, body) => {
  console.log("------------------I am here----------------------")
  callback(null, error)
})

Когда я использую ax ios, код выглядит следующим образом:

let jsonbody = JSON.stringify(body)
axios.post(url2, jsonbody,  {headers: {
      'ACCESS_TIMESTAMP': timestamp,
      'Content-Type': 'application/json'
    }})
.then(res => {
  callback(null, res.data)
})
.catch(err => {
  callback(null, err)
})

Я хочу получить результат res или err, но они не акт.

1 Ответ

1 голос
/ 01 августа 2020

Когда вы размещаете Lambda в своем VP C с частным su bnet, вы должны установить шлюз NAT в свой частный su bnet. Если вы не подключили NAT, Lambda не сможет подключиться к publi c inte rnet и сможет взаимодействовать только с частными IP-адресами.

...