本人想用node.js建立一个http服务器,然后提供接口给android应用去获取服务器数据, 由于是初学,我就打算先学习如何建立简单的http服务器。 于是乎,马上就遇到问题了。
var http = require('http') ;
var server = http.createServer(function(req,res){
res.writeHeader(200,{
'Content-Type' : 'text/plain;charset=utf-8' // 添加charset=utf-8
}) ;
res.end("Hello,大熊!") ;
}) ;
server.listen(3000) ;
console.log("http server running on port 3000 ...") ;
运行代码后,本机可以通过localhost:3000 或者通过ip地址 xxx.xxx.xxx.xxx:3000 在浏览器获取到数据。 但是,处于同一个局域网的其他机器访问xxx.xxx.xxx.xxx:3000 就无法获取到数据了。 这是为什么呢?求大神打救
server.listen(3000, ‘0.0.0.0’) ;
sudo npm install -g http-server
http-server . -p 9999 -o
要让 server 监听来自所有 ip 地址的 request,而不光是本地的
本机防火墙关闭
@tulayang 加了还是一样。。。应该不是这个问题
@dean5277 关了,还是这样
@russj 具体要怎样弄呢?求教
你局域网内其他的机器和你的机器是同一个ip段吗? 你在其他机器上面ping你的机器可以ping的通吗? 你最好是先弄明白两台电脑是否可以通信,
@xiuxu123 可以ping通的,我已经试过
telnet 也通吗? 你ping的是ip,你需要看下端口也是否可以,
是window的防火墙哦
IP也要同一个区段
@xiuxu123 好的!感谢!
@dean5277 好的!感谢!
如果telnet连不上,就说明中间被墙了,你需要看下是否是防火墙的问题,或者什么软件导致的。