我在哪里可以找到 socket.io 1.0的工作示例
Where can I find a working example of socket.io 1.0?
在哪里可以找到 socket.io 1.0与Express 3.0结合使用的工作示例?目前的问题是它在我的索引中找不到/socket.io/socket.io.js
.html。
var express = require('express')
var http = require('http')
var app = express()
app.configure(function () {
app.set('port', process.env.PORT || 80);
});
// setup express server
var serv = http.Server(app);
// setup socket io
var io = require('socket.io')(serv);
app.get('/', function (req, res) {
res.sendfile(__dirname + '/index.html');
});
io.sockets.on('connection', function (socket) {
socket.emit('news', { hello: 'world' });
socket.on('my other event', function (data) {
console.log(data);
});
});
serv.listen(app.get('port'), function () {
console.log("Express server listening on port " + app.get('port'));
});
这是我的索引.html
<!DOCTYPE html>
<html lang="en">
<head>
<title>Socket Example</title>
<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io.connect('/');
socket.on('news', function (data) {
console.log(data);
socket.emit('my other event', { my: 'data' });
});
</script>
</head>
<body>
<b>Socket IO</b>
</body>
这是我在包中的内容.json
{
"name": "socketio",
"version": "0.0.1",
"private": true,
"dependencies": {
"express": "3.0",
"socket.io": "LearnBoost/socket.io"
},
"scripts": {
"start": "node app.js"
}
}
你面临的问题是你决定你和未完成的,未完成的 socket.io 1.0版本。它还没有正式发布(或者它会在 npm 中)。我建议你坚持使用 Socket.IO 的"稳定"版本。
如果你想使用 Socket.IO 1.0,因为新的 engine.io 传输系统,我建议你看看Primus https://github.com/primus/primus,它用一个通用的接口和一个插件系统包装了 socket.io、engine.io、sockjs等。您可以使用此插件系统通过 engine.io 转换器和一些插件轻松构建自己的 Socket.IO 1.0。下面是使用 Primus + Engine.IO 创建工作克隆的示例 https://gist.github.com/3rd-Eden/6113494 Socket.IO
您需要将连接/快速应用程序包装在节点 http 中。服务器。
app.listen() 方法是一种方便的方法,并返回服务器:
var io = require('socket.io');
var app = connect();
var server = app.listen(80);
io.listen(server);
或以下内容是等效的:
var io = require('socket.io');
var http = require('http');
var app = connect();
var server = http.createServer(app);
server.listen(80);
io.listen(server);
Connect 2/Express 3 可以在不启动 http.server 的情况下创建一个应用程序,因此您应该组织它以启动或发出。如果没有其他选择,这应该会让你回到正轨。
// where this = express();
this.server = this.listen(this.config.port);
console.log('[ ' + this.constants.name + ' ] worker listening on port ' + this.config.port);
this.emit('listen', this.server);
对于带有 server.io 和节点的表达式 3:REF
var app = require('express')()
, server = require('http').createServer(app)
, io = require('socket.io').listen(server);
您可以查看此存储库,其中包含完整的 socket.io v1.0 实现。不过,它与快速 v4.0 一起。
https://github.com/theoctal/livenote
- Socket.io房间不工作/没有意义
- 环回IO OAuth不工作
- 事件发射器模式如何在Node,sockets.io中工作
- socket.io-发送到socketid(单个客户端)不工作
- Socket.io 不工作,节点Js
- Socket.io 在 Angular 中更改路线后停止工作
- 需要 RepeatBox 及其行单击事件的工作代码才能在 smartface.io 中跳转到相应的页面上
- 如何通过 webhook 将 json 格式的字符串作为有效负载传递给 iron.io 工作线程
- 我在哪里可以找到 socket.io 1.0的工作示例
- 非阻塞IO如何在javascript中工作
- node.js socket.io发射不工作
- 使基本 socket.io 示例正常工作
- Socket.io没有't在生产中工作
- socket.io发射到所有不工作的套接字
- 如何检查是否提前.IO在我的angularjs网站上工作正常
- Socket.IO 在本地工作,但不是外部工作
- 在Node.js中,异步文件IO方法是如何为本地文件工作的?
- 套接字.Io-client 1.0自动端口发现不工作
- 无法获取套接字.Io-emitter与socket.io-redis一起工作
- 与快车一起工作.IO在一个单独的路由器文件