簡體   English   中英

Node.js-服務來自同一服務器上運行的tomcat的請求

[英]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.

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