[英]Nodejs - serve a request from tomcat running on same server
我有一個在端口3000上運行的nodejs服務器運行正常。
我需要向運行在同一服務器上端口8080上的tomcat服務器發出請求,並將標頭和正文響應返回給客戶端,這基本上隱藏了tomcat服務器正在從客戶端的另一個端口上運行的事實。
var request = require('request');
var url = "http://localhost:8080/?somevar=someval"
request(url, function (error, response, body) {
if (!error && response.statusCode == 200) {
res.send(body);
}
})
當然,這會返回tomcat的響應正文,但不會返回標頭。
是否可以將請求直接傳遞或通過管道傳遞給客戶端,或者我如何還可以發送標頭和正文?
您可以將請求直接傳遞給響應:
var request = require('request');
var url = "http://localhost:8080/?somevar=someval";
request(url).pipe(res);
根據您對代碼上原始請求的實際處理方式,您實際上可以執行一行代理。 看這里 :
req.pipe(request('http://example.com/doodle.png')).pipe(resp)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.