我正在尝试打开套接字 - > PHP页面来自数据,但我不确定如何打开它:
var socket = new WebSocket("ws://myurl.com/sockets/socket.php");
if(socket.onopen)
alert("Open");
else
alert("Not Open");
我在我的索引中链接了最新版本的jQuery(在我的链接到此脚本之上)并且我的PHP文件中没有任何内容 - 只是看看我是否可以打开连接。我错过了什么或做错了吗?
答案 0 :(得分:5)
WebSockets需要服务器上的协议支持;特别是,支持与WebSockets安全标头的HTTP升级握手。简单地将WebSocket指向PHP脚本是行不通的,因为PHP脚本说HTTP,而WebSockets不是HTTP - 它是一个完全不同的协议(尽管是基于HTTP的协议)。
如果你想在PHP中使用WebSockets,你需要使用specialized library that implements WebSockets协议(我没有使用过这些协议;它们只是第一个Google results)。
当然,Apache和PHP并不是实时工作的最佳工具。我使用Node(以及优秀的socket.io包),它旨在处理大量并发的持久连接。