我正在使用AWS Lambda,我想知道是否有辦法發出HTTP請求,但不等待響應?發出HTTP請求UDP-like
我只想ping一個遠程服務,觸發一個事件,但我不在乎該事件觸發的邏輯是否失敗。至少不是在請求源的第一個服務內。
我正在使用AWS Lambda,我想知道是否有辦法發出HTTP請求,但不等待響應?發出HTTP請求UDP-like
我只想ping一個遠程服務,觸發一個事件,但我不在乎該事件觸發的邏輯是否失敗。至少不是在請求源的第一個服務內。
Here解釋了使用超時。
這是例子:
const request = require('request');
request.get('http://some/url/here', {timeout: 100},() =>{console.log('request sent');});
附:請記住,在nodej中,這些操作是異步的,因此您不必等待答案。
,但如果它的明確的應用程序,你想快速響應前端或thirdparties,所以結帳這個例子:
const request = require('request');
const express = require('express');
const app = express();
app.get('/some/route', (req, res) => {
request.get('http://some/url/here',() =>{});
res.status(202).send('Request accepted');
});
這應該讓你得到你想要的。它將在請求發送後立即調用回調(或發生錯誤)。
function udpHttp (options, cb) {
return require('http')
.request(options)
.on('error', cb)
.end(() => cb(null))
}
在node.js的,沒有等待響應,反正它的異步。你的代碼的其餘部分無論如何都可以自由運行,所以只需發送你的迴應並忘記它。當它最終返回時,套接字將被清除。除了發送http請求,然後完成之外,沒有什麼可做的了。 – jfriend00