admin管理员组

文章数量:814863

Nodejs ws.Server的特定选项

有人可以向我解释一下nodejs websocket库'ws'中的disableHixie,clientTracking是什么意思:

new ws.Server([options], [callback])

options Object
host String
port Number
server http.Server
verifyClient Function
path String
noServer Boolean
disableHixie Boolean
clientTracking Boolean
callback Function

我找不到确切的描述,这意味着什么。

回答如下:Hixie-76是WebSocket支持的旧协议,但是该协议在某些版本的Safari和Opera中仍在使用。库'ws'中的默认值为

false,但是您可以禁用该设置并将disableHixie选项设置为true

clientTracking

选项提供对活动WebSocket客户端集合的访问。默认值为true。见下文:var wss = new WebSocketServer({server:app }); wss.on('connection', function (ws) { ..... console.log('Total clients: ', wss.clients.length); .... }

编辑:其他信息:

verifyClient

函数允许您添加任何自定义代码以接受或拒绝传入的连接。您的代码收到带有三个成员的info对象:
    info.origin:连接的来源
  • [info.secure:如果该连接被授权或加密,则为真
  • [info.req:此连接的http.Server请求对象
  • verifyClient函数可以采用以下两种形式之一:

    var wss1 = new WebSocketServer ({ ..., verifyClient: function(info) { # ...check data in info and return true or false... } ); var wss2 = new WebSocketServer ({ ..., verifyClient: function(info, callback){ # ...check data in info and call # callback(true) for success or # callback(false) for failure } });

    如果您可以立即验证客户端,则第一种形式比较简单。对于异步验证,请使用第二种形式。 
  • 本文标签: Nodejs wsServer的特定选项