socket.io 服务器端api

来源:互联网 发布:添加域名为白名单 编辑:程序博客网 时间:2024/06/06 06:58

服务器API

#服务器

通过暴露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 
选项 
作为参考。

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

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

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

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

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

如果vtrue连接的服务器(请参阅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:字符串):服务器

设置路径vengine.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 。

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

#服务器#放出

发出一个事件到所有连接的客户端。 下面的两个是 
当量:

 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 。

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

注册一个中间件,它是被用于执行的功能 
每个传入的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 。 有用的访问 
请求头,如CookieUser-Agent 。

#插座#ID:字符串

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

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

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

所有的数据结构都支持,包括Buffer 。 JavaScript的 
功能不能被序列化/反序列化。

 var io = require('socket.io')(); io.on('connection', function(socket){ socket.emit('an event', { some: 'data' }); }); 

#插座#加入(参数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几次。

 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连接。 有用的访问 
请求头,如CookieUser-Agent 。

0 1