2017-02-22 68 views
1

我正在使用'request'node.js模塊(https://github.com/request/request)向其他服務發送請求。 有時需要發送請求並無限期地等待響應,因爲發送請求的服務緩慢。是否可以在node.js請求中設置無限超時?

它可以設置「超時」屬性的請求,並通過這種方式,您將覆蓋讀取和連接超時默認值:

超時 - 包含的毫秒數整數等待服務器在中止請求之前發送響應標頭(並啓動響應正文)。請注意,如果無法建立底層TCP連接,則全系統範圍的TCP連接超時將取消超時選項(Linux中的默認值可能在20-120秒之間)。

但是,我們可以設置什麼值使這個超時無限?

+0

我想億萬將是無限的。我真的不認爲你會等待超過10天。 –

+0

您可以控制服務器超時。但客戶端可能會有自己的超時(如瀏覽器),這是您無法控制的。 – jfriend00

+0

當然,這是一個設置十億的選項。但是幻數總是看起來像解決方法。如果一些官方文檔說超時設置爲0等於無限,但它沒有說明,那將是完美的。 –

回答

0

設置從120,000(默認)server.timeout屬性0

+0

我擔心通過這樣的方式,我們爲此服務器中的所有請求設置0,對吧? –

+0

@IrinaPetrushenko,你添加了一個特定的腳本或? – FreedomPride

+0

我的意思是,如果你有一些API的服務器,並且你不想爲所有請求設置一個infinit限制,那麼它將無法工作。 –

1

所有客戶都有自己的超時(鉻,火狐,...),那麼你一定要認爲這是沒有必要同時設置一個無限超時,你必須重新考慮你的問題,這不是好的方式男人

+0

在我的情況下,請求從一個node.js服務轉到另一個node.js服務。我可以在兩種服務中控制/編輯超時。 –

+0

好吧,然後檢查這個答案http://stackoverflow.com/questions/21708208/express-js-response-timeout – jesusgn90