我试图使用socket.io处理html页面和http服务器之间的请求,无法发布/ HTTP/1.1 404 Not 服务器代码:
var express = require('express');
var app = express();
var http = require('http').Server(app);
var io = require('socket.io')(http);
console.log(__dirname);
app.use(express.static(__dirname+'/public'));
app.get('/', function(req, res){
res.sendfile(__dirname+'/public/registration.html');
});
io.on('connection', function(socket){
socket.on('registration',function(msg){
console.log('user data'+ msg);
});
});
http.listen(3000, function(){
console.log('listening on *:3000');
});html页面,如下所示
<html>
<head>
<script src="https://cdn.socket.io/socket.io-1.3.4.js">
var socket = io('http://localhost');
console.log(socket);
socket.emit('registration',"test");
</script>
</head>
<body>发布于 2016-10-25 09:54:55
{ "name": "socket.io-test", "version": "0.0.1", "private": true, "scripts": { "start": "node server" }, "dependencies": { "express": "~4.13.1", "socket.io": "^1.4.6" } }npm install,/public文件夹,/public/registration.html文件:
<html> <head> <script src='/socket.io/socket.io.js'></script> <script> var socket = io('http://localhost:3000'); socket.on('connect', function() { socket.emit('registration',"test"); document.getElementById('socket').innerHTML='connected'; }); </script> </head> <body> <h1>Testing socket.io with nodejs</h1> <h3 id="socket"></h3> </body> </html>node server或npm start启动服务器,localhost:3000看起来不错
https://stackoverflow.com/questions/40234889
复制相似问题