通过暴露require('socket.io')
创建一个新的Server
。 工作与无new
:
var io = require('socket.io')(); // or var Server = require('socket.io'); var io = new Server();
任选地,第一或第二参数(见下文)的Server
构造可以是一个选项对象。
将支持以下选项:
serveClient
设置服务器#serveClient值()path
设置为服务器路径#值() 传递给socket.io相同的选项始终传递给
在engine.io
Server
时生成。 见engine.io
选项
作为参考。
创建一个新的Server
,并将其附加到指定srv
。 (可选) opts
可以传递。
绑定socket.io到一个新http.Server
上监听port
。
如果v
是true
连接的服务器(请参阅Server#attach
)将成为
客户端文件。 默认为true
。
这种方法没有效果之后attach
被调用。
// pass a server and the `serveClient` option var io = require('socket.io')(http, { serveClient: false }); // or pass no server and then you can call the method var io = require('socket.io')(); io.serveClient(false); io.attach(http);
如果没有提供参数,此方法返回的当前值。
设置路径v
下engine.io
和静态文件将
提供服务。 默认为/socket.io
。
如果没有提供参数,此方法返回的当前值。
设置适配器v
。 默认为实例Adapter
的
附带socket.io这是基于内存。 看到
socket.io适配器 。
如果没有提供参数,此方法返回的当前值。
设置允许的起源v
。 默认为任何起源是允许的。
如果没有提供参数,此方法返回的当前值。
默认( /
)命名空间。
附加的Server
到engine.io实例上srv
与
提供的opts
(可选)。
附加的Server
到engine.io实例绑定到port
具有给定opts
(任选)。
的同义词Server#attach
。
高级起用。 绑定服务器到特定engine.io Server
(或兼容的API)的实例。
高级起用。 创建一个新的socket.io
从传入的客户端
engine.io(或兼容的API) socket
。
初始化并检索给定的Namespace
由它的路径
标识符nsp
。
如果命名空间已经被初始化,它返回它的时候了。
发出一个事件到所有连接的客户端。 下面的两个是
当量:
var io = require('socket.io')(); io.sockets.emit('an event sent to all connected clients'); io.emit('an event sent to all connected clients');
对于其他可用的方法,请参见Namespace
下面。
见Namespace#use
如下。
代表确定下一个给定的范围内连接套接字池
由路径(例如: /chat
)。
默认情况下,客户端始终连接到/
。
connection
/ connect
。 在连接触发。 参数:
Socket
输入插座。命名空间标识属性。
散列Socket
对象连接到这个命名空间索引
通过id
。
注册一个中间件,它是被用于执行的功能
每个传入的Socket
和接收为参数的插座和
函数来任选延迟执行到下一个登记
中间件。
var io = require('socket.io')(); io.use(function(socket, next){ if (socket.request.headers.cookie) return next(); next(new Error('Authentication error')); });
通过中间件回调错误特殊发送error
数据包的客户端。
一个Socket
是根本类与浏览器交互
客户端。 一个Socket
属于某个Namespace
(默认为/
)
并使用一个基本Client
进行通信。
串识别房间此套接字是列表。
参考底层Client
对象。
引用到underyling Client
传输连接(engine.io Socket
对象)。
返回引用到的吸气代理request
即
起源于底层engine.io Client
。 有用的访问
请求头,如Cookie
或User-Agent
。
的唯一标识符插座会议,来自该
潜在的Client
。
发出一个事件由字符串标识的插座name
。 任何
其他参数可以被包括在内。
所有的数据结构都支持,包括Buffer
。 JavaScript的
功能不能被序列化/反序列化。
var io = require('socket.io')(); io.on('connection', function(socket){ socket.emit('an event', { some: 'data' }); });
增加了插座的room
,并触发可选的回调fn
用err
签名(如有的话)。
插座自动与确定的房间的构件其
会话ID(见Socket#id
)。
加盟房间的机制被处理Adapter
已配置(见Server#adapter
以上),默认为
socket.io适配器 。
移除插座room
,并触发可选的回调fn
用err
签名(如有的话)。
客房断线后自动离开 。
离开房间的机制被处理Adapter
已配置(见Server#adapter
以上),默认为
socket.io适配器 。
设置后续活动排放的改性剂,该活动将
只能广播到已加入给定的插座room
。
发出多个房间,你可以打电话to
几次。
var io = require('socket.io')(); io.on('connection', function(socket){ socket.to('others').emit('an event', { some: 'data' }); });
该Client
类表示传入的运输(engine.io)
连接。 一个Client
可以与许多复相关Socket
属于不同的Namespace
秒。
参考底层engine.io
Socket
连接。
返回引用到的吸气代理request
即
起源于engine.io连接。 有用的访问
请求头,如Cookie
或User-Agent
。