
![[8.5.5.4 或更高版本]](../ng_v8554.gif)
WebSocket
WebSocket 是一种标准协议,它允许 Web 浏览器或客户机应用程序使用一种全双工连接与 Web 服务器应用程序通信。
HTTP 不适用于两个应用程序之间的长时间实时全双工通信。在许多实例中,用户的 Web 服务器应用程序或 servlet 想要在长时间实时全双工会话中与客户机浏览器或应用程序通信。换言之,这两个应用程序想要自由地来回读写数据。此类型应用程序的一个示例是证券交易员 Web 浏览器上经常显示不断变化的货币汇率的应用程序。涉及实现此类型的通信的现有 HTTP 技术的当前解决方案繁琐且低效。用于浏览器与服务器之间的恒定双向通信的 HTTP 解决方案多以轮询和/或仅处理单向流量的两个开放式 HTTP 连接组成。
WebSocket 使用标准 HTTP 请求/响应序列以建立连接。建立连接后,WebSocket API 提供读写接口以通过所建立的连接(异步全双工方式)读写数据。WebSocket 还提供接口以从任一端异步关闭连接。
因为 WebSocket 使用标准 HTTP 请求/响应序列建立连接,所以此连接以与 HTTP 连接相同的方式连通防火墙和代理。WebSocket 需要全双工通信,包括在同一连接上同时读写。WebSphere Web 服务器插件 V8.5.5.3 及更高版本支持全双工通信,但其他防火墙和代理可能需要修改以启用此支持。WebSocket 还可使用 SSL 以进行安全连接和数据传输。此协议按 HTTP 协议使用 SSL 的方式使用 SSL。
Liberty 概要文件支持 WebSocket 1.0 和 WebSocket 1.1 规范。与 WebSocket 1.0 相比,WebSocket 1.1
支持以更健壮的方式指定消息处理程序。
可从 WASdev.net 下载实现 WebSocket 协议的样本程序。有关在 Liberty 概要文件上使用 WebSocket 的预评估,请参阅 WASdev.net 上的 WebSocket 样本应用程序。