io.sails 对象io.sails 对象是 sails.io.js 库及其创建的任何套接字的全局配置选项的所在地。io.sails 上的大多数属性用作连接客户端套接字到服务器时的设置,或用作客户端库本身的顶层配置。io.sails 还提供了一个 .connect() 方法,用于手动创建新的套接字连接。
有关配置 io.sails 的不同选项的信息,请参见 套接字客户端。
.connect() 方法如果 io.sails.autoConnect 为 false,或者您需要使用 sails.io.js 库创建多个套接字连接,则通过 io.sails.connect([url], [options]) 来实现。这两个参数都是可选的,io.sails 属性(如 url、transports 等)的值用作默认值。有关选项,请参见 SailsSocket 属性参考。
io.sails.autoConnect当 io.sails.autoConnect 设置为 true(默认设置)时,库将在加载后等待事件循环的一个周期,然后尝试创建一个新的 SailsSocket 并将其连接到 io.sails.url 指定的 URL。在浏览器中使用时,新的套接字将作为 io.socket 公开。在 Node.js 脚本中使用时,新的套接字将作为用于初始化 sails.io.js 库的变量的 socket 属性附加。
io.sails.reconnection当 io.sails.reconnection 设置为 true 时,套接字将在意外断开连接时(即,不是由于调用 .disconnect() 所致)自动(并且持续)尝试重新连接到服务器。如果设置为 false(默认值),则不会进行任何自动重新连接尝试。默认值为 false。
io.sails.environment使用 io.sails.environment 为 sails.io.js 设置环境,这会影响向控制台记录的信息量。有效值为 development(完整日志)和 production(最小日志)。
io.sails 的其他属性用作创建新套接字(无论是主动套接字还是通过 io.sails.connect())时的默认值。有关可用选项的完整列表以及默认 io.sails 值的表格,请参见 SailsSocket 属性参考。以下是最常用的属性
| 属性 | 类型 | 默认值 | 详细信息 |
|---|---|---|---|
| url | io.sails.url 的值 |
套接字连接到的 URL,或尝试连接到的 URL。 | |
| transports | io.sails.transports 的值 |
套接字将尝试使用其进行连接的传输。传输将按顺序尝试,并允许升级:也就是说,如果您列出 "polling" 和 "websocket",那么在建立长轮询连接后,服务器将尝试将其升级到 websocket 连接。此设置应与 Sails 应用程序中 sails.config.sockets.transports 的值匹配。 |
|
| headers | io.sails.headers 的值 |
默认情况下,每个来自此套接字的请求都将发送的标头字典。可以通过 .request() 中的 headers 选项覆盖。 |