问题标签 [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 投票
0 回答
793 浏览

php - WebSockets 基础知识和 PHP

我已经研究了 WebSockets 几个小时,但似乎无法理解为什么您需要客户端和服务器端库来帮助 WebSockets 实现?

我正在使用 PHP,所以从研究来看,Ratchet 似乎是最受欢迎的。但是,当服务器端 HTML5 支持 WebSockets 时,为什么还需要 WebSockets 的服务器端实现呢?你能在完全不使用库的情况下构建一个聊天系统吗?例如,您能否构建一个聊天系统,而无需任何服务器端支持,即仅使用 jQuery 库?

WebSockets 与 node.js 有什么关系?我发现很难掌握运行 JavaScript 的服务器端将响应发送到 JavaScript 前端。

另外,这是:https ://code.google.com/p/phpwebsocket/库与 Ratchet 类似吗?

0 投票
1 回答
3571 浏览

javascript - Ratchet PHP - 推送消息服务

我使用 Ratchet 看到的大多数示例都是用于聊天服务的,我目前正在构建一个应用程序,用户可以在其中登录并根据他们的用户 ID 从服务器接收通知。

我有基本的教程,但是我很难理解几点:

调用该onOpen()方法时,我将$conn对象设置为一个数组,如下所示:

在我的 Javascript 中,在onopen函数中,我还使用该函数发送 JSON 有效负载send。我的服务器将其拍照并像这样存储在onMessage方法中:

所以现在我将连接的用户存储在一个数组中,如何向特定用户发送消息?我已经调查onSubscribebroadcast但无济于事,但真的不明白WampServerInterface应该用于什么?

由于我自己的类是一个正在运行的脚本,我显然无法在其他任何地方创建它的新实例。由于我的应用程序将发送用户特定的更新,我需要某种方式来执行以下操作:

使用另一个脚本获取当前连接的用户,在某处处理这些并返回他们可能拥有的任何更新,每 60 秒一次。现在虽然这听起来像是轮询,但它只是一个连接,因此不会在服务器上密集 - 至少我是这么认为的。那么,如何将正在运行的服务器脚本与其他地方的其他“静态”PHP 脚本进行交互呢?

谢谢

0 投票
1 回答
519 浏览

symfony - 无法在 Symfony2 websocket 连接上调用函数

首先我使用 JDare/ClankBundle 我按照这些说明从客户端调用函数 https://github.com/JDare/ClankBundle/blob/master/Resources/docs/RPCSetup.md

我一直在控制台上遇到此错误“RPC 错误 [object Object] undefined”

我注意到如果我拼错了 notify_func 函数并不重要,它仍然会抛出相同的错误。我不知道我做错了什么,但我假设没有找到该函数的开头?

这是客户端(Twig)

websocket连接成功

这是服务器端

这是配置

0 投票
0 回答
206 浏览

session - 通过 websocket 的 Laravel 会话数据

0 投票
0 回答
5277 浏览

php - 无法在 PHP 中绑定地址(地址已在使用中)

我正在使用创建客户端和服务器程序的 websocket 开发聊天应用程序。它在本地主机上正常工作,但是一旦我将它上传到服务器,它就会给出错误消息:

我从 Stack Overflow 看到了其他答案,但它们也不起作用。下面是我的客户端和服务器代码。我也尝试更改端口,但同样的问题。

这两个程序都在 test3 文件夹中,我在客户端程序中给出的路径为

服务器.php

客户端.php

服务器工作应用:

0 投票
1 回答
804 浏览

php - 保持套接字服务器在 CentOS 上运行以在 php 中侦听客户端请求

我有一个客户端和服务器程序,我不知道如何在我的 CENTOS 服务器上自动启动服务器,并且无论我的浏览器是否关闭,服务器都应该继续运行,并且它会继续监听客户端请求。请帮忙

服务器.php

客户端.php

0 投票
0 回答
557 浏览

php - 在服务器端监听 WebSocket

我有一个 node.js 服务器,它创建了一个我在客户端用 JS 监听的 websocket。有没有办法在服务器端使用 PHP 监听 websocket 连接?

0 投票
1 回答
2798 浏览

php - 使用 PHPSESSID 值访问会话数据

我正在为我的项目在 php 中实现 web-socket 服务器。当用户创建 websocket 连接时,它会将请求标头中的 PHPSESSID cookie 发送到 web 服务器页面。我想使用他们的 PHPSESSID cookie 值为每个用户获取会话数据。此服务器页面无法通过简单地使用来获取会话值$_SESSION['name']

对于每个传入的套接字连接,我获取 PHPSESSID

这里握手函数将返回 PHPSESSID cookie。

对于每个 websocket 连接,我都会收到正确的 cookie,但$username仅适用于第一个连接。这个 php 文件在后台运行,我必须使用他们的 cookie 对用户进行身份验证,但似乎session_id($cookie);只设置了一次。有没有办法在这个单一页面上获取不同 PHPSESSID 值的会话数据。

0 投票
1 回答
1250 浏览

sockets - Web Sockets - 向所有客户端发送消息

我对 Web Sockets 完全陌生,我已将它们应用到我的聊天中,所以现在它看起来像这样:

它适用于一个客户,当我输入消息时,它会更新聊天框,但只更新我的,但我想为每个人更新它(=所有打开聊天窗口的用户)。那么如何使用 WebSockets 向所有客户端发送消息呢?

0 投票
1 回答
2297 浏览

html - 为什么在使用 ssl 时会出现连接问题?

我在我的网站上运行一个聊天应用程序,当我使用 HTTP 时一切正常,但是一旦我添加了 SSL 并开始使用 HTTPS,我的 websocket 连接就会出现以下错误:

我尝试将 ws 更改为 wss 并删除这些错误,但该聊天仍然无法正常工作。

我使用 Godaddy 作为我的主机/服务器提供商。我是否需要更新 SSL 证书以告诉它以某种方式批准 wss 连接?