将WebSocket集成到Joomla!
本文旨在介绍包含在最新的HTML5规范中的WebSocket技术,该技术允许更快的通信和动态的通信服务器/客户端。
什么是WebSocket?
维基百科说
"WebSocket是一种提供双向、全双工通信通道的技术,通过一个单一的传输控制协议 (TCP) 套接字。它旨在在网络浏览器和网络服务器中实现,但它可以被任何客户端或服务器应用程序使用。"
要了解WebSocket的含义,我们首先应该解释一下今天网络的运作方式:每次你加载一个网站,发送一个表单,点击一些链接使浏览器向负责处理此请求并显示响应的Web服务器发送请求时,(轮询)。
另一方面,我们使用WebSocket连接,客户端发送一个名为'握手'的单个请求,其中创建一个单一的直接双向连接。(WebSocket)
这为金融系统、医疗应用或任何需要实时连接的应用程序等开发开辟了新的途径。
所有这些都很好... 如何使用?
这里事情开始分叉,一方面我们有客户端,另一方面有服务器。 目前有几个正在开发WebSocket服务器,例如:
但是,利用Joomla! 平台为我们提供在命令行使用库的可能性,我们可以考虑创建自己的WebSocket服务器。
要编写一个使用PHP和Joomla! 平台作为结构的WebSocket服务器,您需要使用套接字的特殊类和对象,这些对象不包括在Joomla! 平台的官方版本中。因此,我创建了一个新的库,基于Andrew Eddie关于WebSocket的工作,为Joomla! 平台提供了配置管理和WebSocket服务器。
这些库可以从我在GitHub上的分叉下载:https://github.com/fastslack/joomla-platform/tree/sockets/libraries/joomla/socket
WebSocket服务器安装
git clone -b sockets git://github.com/fastslack/joomla-platform.git
git clone git://github.com/fastslack/websocket-example.git
cd websocket-example
configuration.dist.php cp configuration.php
之后,编辑configuration.php文件,并添加MySQL服务器的数据访问。
运行服务器
现在只剩下运行服务器以启动整个过程了
$. /websocket_example
Starting server ...
测试服务器WebSocket连接
一旦我们的WebSocket服务器运行起来,我们就需要安装和配置com_websockets,其中客户端连接到服务器。该组件将包括执行这些任务所需的javascript文件 (*.js)。 这个组件将包括执行这些任务所需的javascript文件 (*.js)。
本文不尝试为Joomla创建组件,因为网络上有许多关于此的优质教程。所以我将提供下载和测试完成并准备好使用的组件。
结论
WebSocket承诺将成为实现HTTP和HTML中久已寻求的“双向传输”的良好平台,这有助于减少数据传输并使工具能够创建更快、更动态的实时应用。如果我们再加上Joomla! 平台库可以实现的众多功能,那么前景非常乐观。
祝您玩得开心!
发表在Joomla社区杂志上的一些文章代表了作者对特定主题的个人观点或经验,可能不符合Joomla项目的官方立场
通过接受,您将访问https://magazine.joomla.net.cn/外部第三方提供的服务
评论