您的位置:首页 > 其它

socket.io 服务器端api

2016-08-23 17:32 239 查看


服务器API


#服务器

通过暴露
require('socket.io')


#服务器()

创建一个新的
Server
 。 工作与无
new
 :
[code]var io = require('socket.io')(); // or var Server = require('socket.io'); var io = new Server();
[/code]


#服务器(选:对象)

任选地,第一或第二参数(见下文)的
Server
 
构造可以是一个选项对象。

将支持以下选项:

serveClient
设置服务器#serveClient值()

path
设置为服务器路径#值()

传递给socket.io相同的选项始终传递给 
engine.io
 
Server
时生成。 见engine.io 
选项 
作为参考。


#服务器(SRV:HTTP服务器#,选择采用:对象)

创建一个新的
Server
 ,并将其附加到指定
srv
 。 (可选) 
opts
可以传递。


#服务器(端口:数字,选择采用:对象)

绑定socket.io到一个新
http.Server
上监听
port
 。


#服务器#serveClient(V:布尔):服务器

如果
v
true
连接的服务器(请参阅
Server#attach
 )将成为 
客户端文件。 默认为
true
 。

这种方法没有效果之后
attach
被调用。
[code]// 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);
[/code]

如果没有提供参数,此方法返回的当前值。


#服务器#路(V:字符串):服务器

设置路径
v
engine.io
和静态文件将 
提供服务。 默认为
/socket.io
 。

如果没有提供参数,此方法返回的当前值。


#服务器#适配器(V:适配器):服务器

设置适配器
v
 。 默认为实例
Adapter
的 
附带socket.io这是基于内存。 看到 
socket.io适配器 。

如果没有提供参数,此方法返回的当前值。


#服务器#起源(V:字符串):服务器

设置允许的起源
v
 。 默认为任何起源是允许的。

如果没有提供参数,此方法返回的当前值。


#服务器#插座:命名空间

默认( 
/
 )命名空间。


#服务器#附加(SRV:HTTP服务器#,选择采用:对象):服务器

附加的
Server
到engine.io实例上
srv
与 
提供的
opts
 (可选)。


#服务器#附加(端口:数字,选择采用:对象):服务器

附加的
Server
到engine.io实例绑定到
port
 
具有给定
opts
 (任选)。


#服务器#听

的同义词
Server#attach
 。


#服务器#绑定(SRV:发动机#服务器):服务器

高级起用。 绑定服务器到特定engine.io 
Server
 
(或兼容的API)的实例。


#服务器#的OnConnection(插座:发动机#插座):服务器

高级起用。 创建一个新的
socket.io
从传入的客户端 
engine.io(或兼容的API) 
socket
 。


#服务器#(NSP:字符串):命名空间

初始化并检索给定的
Namespace
由它的路径 
标识符
nsp
 。

如果命名空间已经被初始化,它返回它的时候了。


#服务器#放出

发出一个事件到所有连接的客户端。 下面的两个是 
当量:
[code]var io = require('socket.io')(); io.sockets.emit('an event sent to all connected clients'); io.emit('an event sent to all connected clients');
[/code]

对于其他可用的方法,请参见
Namespace
下面。


#服务器使用#

Namespace#use
如下。


#命名空间

代表确定下一个给定的范围内连接套接字池 
由路径(例如: 
/chat
 )。

默认情况下,客户端始终连接到
/
 。


活动

connection
 / 
connect
 。 在连接触发。

参数:

Socket
输入插座。


#命名空间#名称:字符串

命名空间标识属性。


#命名空间#连接:对象

散列
Socket
对象连接到这个命名空间索引 
通过
id
 。


#命名空间#使用(FN:功能):命名空间

注册一个中间件,它是被用于执行的功能 
每个传入的
Socket
和接收为参数的插座和 
函数来任选延迟执行到下一个登记 
中间件。
[code]var io = require('socket.io')(); io.use(function(socket, next){ if (socket.request.headers.cookie) return next(); next(new Error('Authentication error')); });
[/code]

通过中间件回调错误特殊发送
error
 
数据包的客户端。


#插座

一个
Socket
是根本类与浏览器交互 
客户端。 一个
Socket
属于某个
Namespace
 (默认为
/
 ) 
并使用一个基本
Client
进行通信。


#插座#客房:数组

串识别房间此套接字是列表。


#插座#客户端:客户端

参考底层
Client
对象。


#插座#康恩:插座

引用到underyling 
Client
传输连接(engine.io 
Socket
对象)。


#插座#请求:请求

返回引用到的吸气代理
request
即 
起源于底层engine.io 
Client
 。 有用的访问 
请求头,如
Cookie
User-Agent
 。


#插座#ID:字符串

的唯一标识符插座会议,来自该 
潜在的
Client
 。


#插座#放出(参数name:String
[,...]):插座

发出一个事件由字符串标识的插座
name
 。 任何 
其他参数可以被包括在内。

所有的数据结构都支持,包括
Buffer
 。 JavaScript的 
功能不能被序列化/反序列化。
[code]var io = require('socket.io')(); io.on('connection', function(socket){ socket.emit('an event', { some: 'data' }); });
[/code]


#插座#加入(参数name:String
[,FN:功能]):插座

增加了插座的
room
 ,并触发可选的回调
fn
 
err
签名(如有的话)。

插座自动与确定的房间的构件其 
会话ID(见
Socket#id
 )。

加盟房间的机制被处理
Adapter
 
已配置(见
Server#adapter
以上),默认为 
socket.io适配器 。


#插座#产假(参数name:String
[,FN:功能]):插座

移除插座
room
 ,并触发可选的回调
fn
 
err
签名(如有的话)。

客房断线后自动离开 。

离开房间的机制被处理
Adapter
 
已配置(见
Server#adapter
以上),默认为 
socket.io适配器 。


#插座#至(室:字符串):插座


#插座#中(室温:字符串):插座

设置后续活动排放的改性剂,该活动将 
只能广播到已加入给定的插座
room
 。

发出多个房间,你可以打电话
to
几次。
[code]var io = require('socket.io')(); io.on('connection', function(socket){ socket.to('others').emit('an event', { some: 'data' }); });
[/code]


#客户

Client
类表示传入的运输(engine.io) 
连接。 一个
Client
可以与许多复相关
Socket
 
属于不同的
Namespace
秒。


#客户端#康恩

参考底层
engine.io
 
Socket
连接。


#客户端请求#

返回引用到的吸气代理
request
即 
起源于engine.io连接。 有用的访问 
请求头,如
Cookie
User-Agent
 。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: