用express在node.js开发一个socket.io聊天服务器,app.js出现的文件路径问题
终端报错:Path must be a string. Received null
感觉上是 __dirname的问题,但是我改成相对路径后还是报错,求大神指导一下刚学node的小白,感激不尽~
app.js下:
var app = require('express').createServer(),
io = require('socket.io').listen(app);
app.listen(1111);
app.get('/',function(req,res){
res.sendfile(__dirname+'/index.html');
});
io.sockets.on('connection',function(socket){
socket.emit('welcome',{text:'hello world!'})
})
index.html下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>socket.io chatting!</title>
<script src="/socket.io/socket.io.js"></script>
</head>
<body>
<h1>let's chatting~</h1>
<script>
var socket = io.connect();
socket.on('welcome',function(data){
console.log(data.text);
})
</script>
</body>
</html>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
res.sendfile(__dirname+'/index.html');
path 路径不要使用绝对路径,如果你想要使用绝对路径就使用
options
配置项的root
进行配置比如:
或者直接实现相对路径
你可以试试