簡體   English   中英

node.js http連接適用於AWS實例,不適用於LoadBalancer

[英]node.js http connection works with AWS instance, doesn't work with LoadBalancer

我正在使用node.js和http對象連接到具有特殊應用程序服務器的Web服務器。 對於亞馬遜上的服務器正常工作,沒有問題。

不,我們正在運行經典負載均衡器。 可以-我可以在瀏覽器中輸入ELB的URL,然后看到服務器的答案。

但是,當我嘗試使用node.js腳本打開相同的URL時,總是會超時。

樣例代碼:

 try { console.log( "start test" ); var http = require("http"); var options = { host: "test.server.name", port: "80", path: "/dp/", headers: { 'Encoding' : 'BINARY' } }; console.log( "start get " + options.host ); http.get( options , function( res ) { console.log( "in callback" ); res.on('data', function(data) { console.log( "callback get data " + data ); }); res.on('end', function() { console.log( "callback end" ); }); res.on('error', function(e) { console.log( "callback error" ); }); } ); } catch( err ) { console.log( "error " + err.message ); } 

代碼直接與服務器一起使用。 使用負載平衡器時不起作用。

我必須知道該怎么做-有什么想法嗎?

我知道了。 不知道為什么-但是問題出在我們正在使用的代理中。

我發現了這一點: 如何將HTTP代理與node.js http.Client一起使用? 通過使用我們的代理,它起作用了...

我找到了-是代理。

我使用以下方法設置代理: 如何將HTTP代理與node.js http.Client一起使用? 和這個: https//www.vanamco.com/2014/06/24/proxy-requests-in-node-js/

現在工作!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM