2011-07-26 65 views
5

嗨我有一个用PHP编写的运行套接字服务器。Javascript客户端如何连接到PHp套接字服务器?

服务器正在侦听连接..任何想法如何我的客户端(写在JavaScript)将连接到服务器并发送数据到它?我只知道如何将一个php客户端连接到套接字服务器,但不确定如何连接一个javascript客户端。

谢谢你们所有的时间。

+0

JavaScript是客户端脚本,它不提供开放套接字afaik。我认为在写作的时候是不可能的。 –

+1

你在运行什么JS环境?节点? WSH? ASP?一个浏览器插件?浏览器查看网页?还有别的吗? – Quentin

+0

@Lionel Chan - JS是一种通用编程语言,并没有提供大量的I/O周期 - 来自主机环境。 – Quentin

回答

-1

简单地说 - 你不能这样做 - 这将是一个安全漏洞,让客户端代码打开套接字连接。

但是,您可以模拟 - 将您的数据作为AJAX请求发送到另一个PHP页面,然后使该PHP页面通过套接字进行通信。

更新2017年

与此同时,websockets成了一件事。请注意websocket协议是不同于generic networking sockets

+0

Ummm:http://code.google.com/p/phpwebsocket / – Relic

0

我不知道任何提供JS的任意套接字功能。 Web Sockets的支持有限(我认为这需要您修改服务器以符合空间)。否则,简单的XHR可能会满足您的需求(这将需要您修改服务器以充当Web服务)。如果服务的运行原因与页面不同,则您需要使用CORS或使用解决方法,如JSONP

4

回答一个老问题的情况下,人们发现它,因为我通过谷歌做到了。

当今几乎所有当代浏览器都支持WebSocket Javascript API。通过WS,浏览器中的客户端JS可以打开使用PHP或其他语言编写的全双工套接字。服务器必须实现WS协议,但现在有用于PHP,Java和其他语言的WS库。在这个写作的时刻,WS实现看起来像是一个移动的目标,但是,我目前正在与WS/JS浏览器客户端通信,并与WS/Java服务器进行通信,而且它似乎正在工作。

建议在您选择的服务器语言中使用Google搜索实现WS实现。

希望这会有所帮助!

相关问题