问题标签 [phpwebsocket]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
5119 浏览

html - 使用最新协议的 WebSocket 服务器 (hybi 10)

我浏览了这里的论坛,这是我发现的最接近的问题:

如何在 WebSockets hybi 08+ 中(反)构造数据帧?

不同之处在于我无法成功握手。我假设在握手完成之前框架不会起作用,这是正确的吗?

当 Chrome 方便地更新到使用 HyBi 10 websocket 协议 ( https://datatracker.ietf.org/doc/html/draft-ietf-hybi-thewebsocketprotocol-10 )的第 14 版时,我正要启动概念验证。根据握手规范中的信息(https://datatracker.ietf.org/doc/html/draft-ietf-hybi-thewebsocketprotocol-10#section-5.2.2),我已经能够成功创建一个 Sec -WebSocket-Accept 键(根据他们的示例成功),但在客户端,socket.onopen 函数永远不会触发。

上次我遇到了 WebSocket 协议握手的问题,这是用正确的字节终止握手的问题(或者我认为字符更准确?)。我正在将 PHP 用于当前的实现,这意味着尝试解码 Python 或 C# 实现,但到目前为止没有成功。

这是我在 Chrome 14(适用于 Windows)中运行的客户端 Javascript:

这是我用于握手的服务器端 PHP 代码:

一旦客户端发送初始握手,Javascript 套接字就会无限期地保持在 CONNECTING 状态。这意味着 onopen 永远不会被触发,因此我的套接字处于不确定状态。关于如何调试甚至更好地确认我的握手方法的任何想法都会很棒。

这是 Python 中的一个明显(我不能说它是否有效)解决方案(https://github.com/kanaka/websockify/blob/master/websocket.py)。寻找 do_handshake 方法。

谢谢!

0 投票
1 回答
341 浏览

phpwebsocket - 如何告诉 websocket 服务器接受传入的连接?

我已经开始使用http://code.google.com/p/phpwebsocket/中的 websocket php 示例,它在 localhost 上运行良好,但不幸的是,除了 localhost 之外,没有其他客户端可以连接到 websocket 服务器。每当我将路径更改为http://10.27.50.25:8787/client.html之类的东西时,它都不会让客户端连接。有人对如何修复它有任何想法/示例吗?

提前致谢

0 投票
1 回答
4696 浏览

phpwebsocket - 实现 phpwebsocket 库的错误“不是有效的套接字资源”

我正在尝试使用http://code.google.com/p/phpwebsocket/上的 phpwebsocket 库 我使用的是 server.php 文件的 r8 版本。为了进行测试,我刚刚尝试了同样由网站提供的 client.html 文件。

当服务器启动时,我得到这个:

但是当我在浏览器中加载 client.html 文件时,服务器显示以下错误:

有两个变量没有定义,函数socket_select()返回错误“5 is not a valid Socket resource”

在浏览器中,一旦加载文件,我就会收到“已断开连接”消息。

我尝试使用 XAMPP(Apache 和 PHP)使服务器在本地工作,但我遇到了同样的错误。我还尝试更改端口并按照此问题中的说明进行操作:

http://code.google.com/p/phpwebsocket/issues/detail?id=33

但我仍然收到错误“5 不是有效的套接字资源”

我记得几个月前我让它运行了几次刷新页面,但现在不可能了。此外,我需要它一直工作,而不仅仅是在我刷新页面 20 次之后。

我也尝试使用 websocket.class.php 文件,但这次我在客户端出现错误。浏览器现在返回“WebSocket 握手期间出错:缺少 'Sec-WebSocket-Accept' 标头”。

所以,我不能让它与旧文件或新文件、远程或本地服务器、魔法或占卜板一起工作!

任何的想法?

谢谢

0 投票
3 回答
4508 浏览

php - 一个非常简单的 WebSocket 服务器

有谁知道同时支持 75 和 76 的简单 WebSocket 服务器?

我曾经使用 phpwebsocket(我有一点 php 经验),直到 Chrome 自我更新并将一切都搞砸了。

我真正需要的只是一个服务器,它将发送给它的消息回显到所有其他连接。最好是用php写的,不过真的没关系,只是我不能用node.js的解决方案。

0 投票
1 回答
363 浏览

html - HTML WebSocket 服务器,用于不同浏览器之间的通信

我一直在尝试实现 HTML5 套接字服务器,以将它接收到的所有内容广播给所有连接的客户端,但没有成功。

我是套接字的新手,如果有任何可用的开源或真正需要检查的东西,有人可以建议我。我只能看到客户端到服务器的通信,但我无法将数据从一个客户端发送到服务器到另一个客户端,或者简单地说,服务器只是将所有消息广播到所有连接的客户端?

0 投票
2 回答
3967 浏览

html - 带有 hybi-17 的 HTML5 WebSocket

更新:我解决了解码问题,感谢pimvdb

遵循解决方案(在 PHP 中):

*** 原题目开始***

我正在尝试使用hybi-17 handshake为个人应用程序开发 HTML5 WebSocket 。

我从phpwebsocket开始,唯一改变的是握手功能,从原来的到这个:

我为客户端http://code.google.com/p/phpwebsocket/source/browse/trunk/+phpwebsocket/client.html)和服务器( http://code.google)使用了phpwebsocket源代码。 com/p/phpwebsocket/source/browse/trunk/+phpwebsocket/server.php)。

此时,我测试了应用程序。遵循服务器调试:

这是客户端调试:

我所做的只是连接客户端并发送命令'Hello'。如您所见,服务器收到的是编码数据而不是明文:为什么?

我正在寻找帮助我使用 hybi-17 开发 html5 websocket 的人。

恰兹

PS:这个为 hybi-17 实现握手)主题和这个解码网络字符(HTML5 Websocket))可能会有所帮助。

PPS:我在Chromium 15 .0.874.106~r107270-0ubuntu0.11.04.1上测试过

0 投票
2 回答
603 浏览

html - tcp socket服务器测试html5websocket

哪个是测试 html5websocket 的最佳 tcp 套接字服务器?我开发了一个基于 html5socket 的客户端,它将与 tcp 交互。所以我首先想要一个测试服务器。我擅长 PHP,但不擅长套接字编程。所以我使用了从谷歌代码下载的PHPwebsocket。我尝试使用它自己的客户端和服务器进行测试,但它突然断开连接并且无法按预期工作,那么是否有任何其他套接字服务器来测试 HTML5 websocket 客户端?哪个更好,我可以使用基于 python 或基于 java 的 tcp 服务器,或者如果在 PHP 中,那会更方便。请告诉我测试 HTML5 websocket 还需要什么。我是套接字的新手。所以我的概念不是很清楚。

感谢您的任何建议。

0 投票
2 回答
13316 浏览

php - 如何运行 websocket 服务器。我正在使用 WampServer 2.1

它在标题中清楚地说明了这一点。我想要一种在 Wamp 2.1 附带的 apache 服务器中 运行 websocket 服务器的方法

更新

检查此页面http://net.tutsplus.com/tutorials/javascript-ajax/start-using-html5-websockets-today/查看第 9 步,其中描述了如何运行 websocket 服务器。那是给 XAMPP 的。我想在 WAMP 中做到这一点。抱歉,如果不清楚。


日期 2

win 7上的cmd

我试图按照照片中的方式运行它,但是如您所见,我做错了。对不起,我不擅长命令行。你能告诉我运行 websocket-server 的确切方法吗


更新 3

cmd访问php.exe

又一次试验,什么也没发生。

0 投票
1 回答
629 浏览

php - php web socket(服务器端)

您好,我最近一直在研究 ajax 和 JavaScript Web 开发,并且正在寻找一种在收到新信息时更新浏览器的方法,我终于找到了它...... WebSockets 我可以做客户端和 JavaScript,但服务器端是逃避我我只是不明白。我希望它在 php 中完成,因为它是我理解的一种语言......我已经做了很多搜索,但谷歌给我的页面没有解释。

无论如何,长话短说,我想指出一个简单的 php websocket 脚本。如果我需要任何帮助,我会自己剖析它并回来。

抱歉,这个问题似乎是一项糟糕的研究,但几天来我一直在寻找一个我能理解的简单脚本。

提前谢谢你!

编辑:

在使用了 Sockets 之后,我强烈推荐 NodeJS。它擅长它的工作。Php 在多线程方面也有一些问题(这对于 WebSockets 来说几乎是必需的)。

在提出这个问题时,我并没有明确表示我不想使用图书馆。我只是想要一个小脚本。

0 投票
2 回答
1097 浏览

firefox - MozWebSocket 不响应握手

Firefox 10 不会接受(我真的不知道?)我的握手。Offcorse 这是 Mozilla 然后使用 MozWebSocket 而不是 WebSocket。我的服务器响应标头是:

它在 Chrome 16 完美下运行,但在 Firefox 上它只是在等待某些东西,即使服务器说握手完成。然后在一段时间后,offcorse 客户端进入状态 3 (DISCONNECT)。

有任何想法吗?