这是我的客户代码。
var express = require('express');
var url=require('url');
var app =express();
var fs=require('fs');
app.use(function(req,res,next){
console.log(req.url,req.method);
next();
});
app.get('/user/data',function(request,response)
{
response.send("User1,User2");
response.end();
});
var server=app.listen(7000);
console.log("started");
这是我向上述服务器发出请求的客户端代码。问题是上述服务器给出的响应即“User1,User2”将显示在控制台中,而不是显示在浏览器上。
var express=require('express');
var http=require('http');
var app=express();
var body="";
app.get('/data',function(req,res){
var options=
{
'host':'localhost',
'path':'/user/data',
'port':'7000'
}
var call=function(response)
{
response.on('data',function(chunk)
{
body+=chunk;
});
response.on('end',function()
{
console.log(body);
res.write(body);
});
}
http.request(options,call).end();
});
app.listen(9000);
console.log("started");
答案 0 :(得分:2)
替换
res.write(body);
使用
res.send(body);
或者
res.write(body);
res.end();
这不是该页面的唯一问题)但是这会让你开始。
答案 1 :(得分:0)
您可以使用request吗?
如果您在"客户端"中不需要console.log
代码,你可以:
app.get('/data', function (req, res) {
var options = {
'host':'localhost',
'path':'/user/data',
'port':'7000'
}
request(options).pipe(res);
});