问题标签 [ratchet]

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 投票
3 回答
19667 浏览

php - Ratchet WebSocket Server 可以向客户端本身发送消息吗?

我想使用 Ratchet ( http://socketo.me ) 在 iPhone 应用程序和服务器之间建立永久连接。我需要在应用程序和服务器之间交换数据。

从这个例子(http://socketo.me/docs/hello-world)我发现我有一个函数 onMessage,当应用程序向服务器发送消息并且服务器可以发送响应时调用它应用程序。

但是服务器还必须能够在不从应用程序获取数据的情况下向应用程序发送数据。例如,应用程序和服务器之间的连接已经建立。服务器上发生了一些事情,我们需要向应用程序发送新数据。我该怎么做,有可能吗?

主要问题是如何从服务器向应用程序发送数据?

感谢您的任何帮助。

0 投票
3 回答
5388 浏览

symfony - WebSocket 无法与服务器建立连接

我尝试通过 WebSocket 在我的 symfony 项目上创建一个简单的聊天页面。首先我使用了React-php库,它在终端上完美运行,但是当我尝试将它连接到浏览器时,我在 chrome 上遇到了这个错误:

在火狐上

接下来我使用Ratchet库并按照教程进行操作,但仍然存在同样的问题,在终端上工作,在浏览器上出错。我telnet localhost 8000在终端上使用,浏览器上的 javascript 是

React 的服务器代码

和 Ratchet 的服务器代码

另一件事是客户端页面网址localhost/X/chat和服务器localhost/X/server,我试过ws://localhost:8000/X/server但仍然无法正常工作

0 投票
2 回答
7340 浏览

html - 使用 WebSockets 进行多人 HTML5 游戏开发。选择什么,Node.js、Ratchet 还是其他?

在问这个问题之前我做了一些研究,但我找不到适合我情况的具体答案。我还是 WebSockets 和游戏开发的新手,所以我可能无法很好地解释某些部分,如果是这种情况,请告诉我,以便我可以尝试更好地解释它。

我目前正在使用 CakePHP 开发一个 Web 应用程序,它将提供多种 HTML5 多人游戏。在某些情况下,这些游戏需要将数据发送到数据库。问题是,我想使用 Node.js 来实现游戏服务器端逻辑,但我不确定是否能够将数据传递到数据库。我认为最好的方法是将数据从 Node.js 发送到 PHP 操作,然后将其存储在数据库中,但我也不知道这是否可能。

我发现了一些关于这个DNode的东西,但我不确定这是否是我问题的答案,而且它似乎是 beta 版本,我想避免什么。

作为替代方案,我考虑使用Ratchet来实现游戏服务器端逻辑。至少我知道我可以让它与我的应用程序通信,但由于我在游戏开发中找不到任何参考,我不确定这是否是个好主意。

我不知道任何其他框架,所以如果我有比这两个更好的选择,请告诉我:)

请给我你的意见。谢谢!

0 投票
3 回答
14256 浏览

node.js - 想要选择:Node.js Meteor.js Ratchet RabbitMQ for Real-time WebChat(论坛)

在问这个问题之前我做了一些研究,但我找不到适合我情况的具体答案。

我想创建与服务器上的数据库实时同步的 WebChat。(MySQL 或 MongoDB - 都可以)但是关于同步数据,有几种方法可以做到:

  1. Ratchet 的 PHP + websockets 和我的工作只是通过 JSON 创建一个协议来进行身份验证和消息传递。许多文档,许多教程。(我知道 websockets 在 IE 中不起作用,但没关系)

  2. node.js + socket.io - 有与 1 相同的技术解决方案。但语言不同。

  3. node.js + meteor.js (sockJS) - 似乎大家都做了所有的工作,我不需要添加任何协议功能,只需编写逻辑代码。但是高负载呢?文档怎么样......非常年轻的框架。

  4. Tornado + TornadIO2 (socket.io) + RabbitMQ

有人可以将 RabbitMQ 与流星.js 进行比较吗?按性能。有人可以说哪种方式更好吗?

我不了解所有框架,所以如果我有比这四个更好的选择,请告诉我:)

请给我你的意见。谢谢!

0 投票
2 回答
1850 浏览

php - 这是实时通知的正确选择吗?php + 棘轮 (websockets)

我是 websocket 和实时应用程序的新手,我需要一些说明。

我为一位客户开发了一个涉及一些用户和产品数据的应用程序。它是PHP在内部 apache 服务器上运行的 Web 应用程序。该应用程序的客户端主要基于 JQuery,对于某些可在平板设备上使用的部分,我们使用JQuery mobile/ html5

现在客户要求以这种方式添加一些消息/通知功能:用户将能够发布有关产品的消息,并且必须“显示”其他用户的 Web 控制台实时通知。我们正在考虑在页面标题中添加一些内容,以通知存在新消息。

我做了一些研究,因为所有的应用程序都已经用 PHP 构建了,所以我想去Ratchet。这是一个好主意吗?

如果我理解这一点,我将需要在服务器上安装棘轮服务器组件并用于客户端集成,例如AutobahnJS库;这样对吗?

有没有人已经建立了这样的东西?Apache 和 Ratchet 服务器之间的通信有问题吗?

0 投票
2 回答
12183 浏览

php - 如何在 MAMP 或 XAMPP 上安装 Ratchet WebSockets for PHP?

我正在尝试将实时聊天集成到我的 php / 骨干应用程序中,我想我会使用棘轮?我需要做什么才能将 Ratchet 安装到 MAMP 或 XAMPP 中?他们网站上提供的唯一文档是使用 CURL,但我不知道如何为 localhost 安装必要的资源,也不知道这些资源需要添加到哪里。任何意见,将不胜感激。

0 投票
1 回答
1594 浏览

ssl - 带通道的翘曲棘轮

我正在运行棘轮 webSocket 服务器,它运行良好。问题是某些连接在握手后立即关闭。

在搜索 stackOverflow 和 google 后,我发现我应该使用 wss,因为使用 ssl 会阻止连接被关闭。经过更多阅读后,我发现 wss 尚未在棘轮中实现,解决方案是使用 stunnel 扭曲棘轮。我再次搜索有关如何实现此功能的帮助,但发现 non .

我如何用 stunnel 扭曲棘轮?有没有更好的方法来解决这个问题?我真的是一个新手,所有的 ssl 问题。

谢谢!

0 投票
1 回答
3542 浏览

symfony - 在棘轮 websocket 连接中启动会话

我们已经构建了一个 Ratchet websocket 服务器,它服务于一个独立的客户端应用程序。服务器在端口 8080 上运行,我们的 Symfony 应用程序在端口 80 上运行。在 websocket 服务器中运行会话至关重要,这样我们才能唯一地识别每个客户端。问题是 Ratchet 没有通过端口 8080 发送 set-cookie 标头。

希望找到一种方法来发送 set-cookie 标头以响应 8080 上的升级请求,我尝试在 onOpen() 中启动一个新会话:

但这并没有导致在升级请求的响应中发送回 set-cookie 标头。

我们有一个解决方法,客户端必须首先在端口 80 上执行 GET 以获取 cookie,然后再通过 8080 发送 websocket 升级请求,以便它可以发送带有升级请求的 cookie。我希望能像我上面尝试的那样工作,因此客户端不必打扰端口 80 上的 Web 应用程序。

我错过了什么吗?

0 投票
2 回答
1365 浏览

php - PHP 棘轮 websocket $conn->send($msg)! 如何在客户端获取此消息?

这是我的代码(使用 rachet 和 wamp 服务器的 websocket php!

我将使用 $conn->send() 为所有客户端发送消息,但我不知道如何在客户端上使用 autobahnJS 获取此消息?

更新 我找到了解决这个问题的方法!

1) 在 autobahnJS 中启用调试模式

2)使用 conn._websocket.onmessage 从服务器获取每个消息响应。

谢谢大家。

0 投票
2 回答
1454 浏览

php - 棘轮 Symfony2.2

我正在尝试使用 Ratchet 创建一个实时 Symfony 应用程序,但我不知道我应该将 WampServerInterface 和服务器脚本放在哪里(在 symfony 服务或某个类中)以及我应该如何从我的 appController 调用它