0
回答
nodejs中request关于path的设置问题
利用AWS快速构建适用于生产的无服务器应用程序,免费试用12个月>>>   

    系统:win7 32位       语言环境:node.js

    问题:在执行nodejs中的request,会设置到option中的path,当path是一个完整的url(比如:http://www.baidu.com),那么服务器接收到的url就是这个完整的URL(http://www.baidu.com),跟option里面的host没有任何关系了,为什么呢?

    测试代码如下:

    

var http = require('http')
;
var server = http.createServer(function(req,res){
	console.log(req.url);// http://www.baidu.com

	res.writeHead(404, {"Content-Type": "text/html"});
	res.end("<h1>404 Not Found</h1>");
});

server.listen(81,function(){
	console.log('listen 81');
});

var req = http.request({
	host:'127.0.0.1'
	,port:'81'
	,method:'GET'
	,path:'http://www.baidu.com'
	,header:{}
},function(res){
	 console.log("Got response: " + res.statusCode);
	 console.log(res.headers);
})
.on('error', function(e) {
  console.log("Got error: " + e.message);
})
;
req.end();



运行结果:

举报
subying
发帖于3年前 0回/1K+阅
顶部