1、最简单的例子代码 test.js:
2、在你的Win7安装路径下找到hosts(例如:C:\Windows\System32\drivers\etc\hosts),加入以下两行:
3、运行test.js
4、在浏览器中尝试以下url:
你会发现,3个url都可以得到响应,但console中输出的hostname、port、protocol全都是null。 为什么呀?! 在WinXP下没这问题呀! 有别人遇到同样问题吗? 有什么设置可以解决吗?
回复 (3)
H
貌似不是req.url orginalUrl好像叫这个
Y
解决了: 用Node本身的 req.headers.host 或者 Express提供的 req.host, req.protocol 可以得到有意义的值。 req.url 和 req.orginalUrl 都不包含protocol、hostname、port,Win7下与WinXP下是一样的。
A
本来req.url里就不会有你要的那些信息,自己去读读HTTP协议规范就知道了,req.url其实不是你想象的url
参与回复
登录后即可参与回复。登录