问题标签 [thruway]

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 投票
1 回答
624 浏览

php - can Thruway PubSub allow amend message before publish?

chat application example.

Mr A (07-Aug-2017 15:01) : hello all
Mr B (07-Aug-2017 15:20) : hello Mr A

The Server Date Time (dd-mmm-yyyy hh:mm) is inserted by Server. Which I can easy done in Ratchet.
Ratchet.Wamp.WampServerInterface api document
Inside the OnPublish, Where I can amend the message before really publish out.

Can Thruway do the same ? I cannot find any Thruway doc, and I see the examples but not found what I want.Thruway Examples

0 投票
1 回答
2509 浏览

php - 使用带有 voryx Thruway WAMP 消息系统的 php 发送消息

我正在尝试构建一个通知消息系统。我使用SimpleWsServer.php服务器示例。当服务器上的任务完成时,我想向用户的浏览器推送通知。这需要使用 PHP 来完成,我找不到显示此内容的教程。所有教程似乎都显示了 tavendo/AutobahnJS 脚本在 PHP 服务器作为管理器运行时发送和接收。

是否可以使用 php 脚本向订阅者发送消息?

0 投票
1 回答
1122 浏览

php - Thruway WAMP2 上的内部客户端

我正在研究内部客户端 + 身份验证模型的示例,如下所示。现在我需要检索已连接会话的列表并从内部客户端拦截会话的关闭事件。我想问是否有任何方法可以存档该任务?我正在考虑将该列表保存在 redis 中,但这意味着我必须重新编写Thruway\Peer\Router类,因为所需的变量现在是私有的,我们无法访问它们来扩展。

文件 server.php

文件 SimpleAuthProviderClient.php

文件 InternalClient.php

0 投票
2 回答
808 浏览

autobahn - 注册/订阅调用/发布之间的区别

我正在学习 WAMP(Web 应用程序消息传递协议)。我试图找出 AutobahnJS 中这些方法之间的区别。(以及带有 Thruway 的 PHP 客户端 - https://github.com/voryx/Thruway

  • 注册/订阅
  • 呼叫/发布

但我无法区分它们,有什么提示吗?

谢谢 :)

0 投票
0 回答
436 浏览

javascript - 得到错误响应 - wamp.error.no_such_subscription

有 WAMP - Web 应用程序消息传递协议(https_github.com/tavendo/WAMP/blob/master/spec/basic.md

对于后端,我使用https_github.com/voryx/Thruway

对于前面http_autobahn.ws/js/

操作系统 - 没有由 vagrant 设置的 GUI 的 Ubuntu 12

有 - PHP 5.5.9-1 和它的作曲家。

我正在尝试使用订阅和取消订阅的标准功能尝试执行取消订阅时出现“取消订阅错误”

我的订阅看起来像:

最后一个主题(“loc.wampchat.room.message.”+ self.room_id)看起来像“loc.wampchat.room.message.1125”

它的奇怪错误,因为它只出现在主题 loc.wampchat.room.message.... 和所有其他主题(几乎相同)都很好!

退订看起来像:

这里有什么控制台(在浏览器中,Chrome 最新版本)向我显示:

主要的误解是,当出现此错误时,服务器根本没有反应 - 只需继续工作!我在服务器日志中看不到任何问题。

所以主要问题是:这个错误有多严重?我可以忘记它并继续我的工作还是我必须以某种方式修复它?

0 投票
1 回答
639 浏览

thruway - 客户端未使用演示代码接收已发布的事件?

我正在尝试 Thruway,但无法让演示代码正常工作。

Javascript代码:

我已经SimpleWsServer.php运行:

我已经SimpleClient.php运行(我删除了 RPC 代码,因为我只想将消息从服​​务器推送到客户端):

在我看来,演示代码Hello, world from PHP!!!在订阅后将消息发送给客户端,但我在浏览器的控制台中没有看到消息。

我知道客户端正在连接到服务器,因为SimpleClient.php将以下内容输出到终端:

我错过了什么,还是应该Hello, world from PHP!!!在浏览器控制台中打印出来?

0 投票
2 回答
2837 浏览

apache - 如何使用安全的 websockets (wss)?

我在我的网站上使用 AutobahnJS 和 Thruway,使用非加密连接一切正常:

但是,我无法使用安全连接。在控制台中更改ws://www.mysite.com:9090wss://www.example.com:9090会导致此错误:

WebSocket 连接到“wss://www.example.com:9090/”失败:连接建立错误:net::ERR_TIMED_OUT

我的服务器上有一个 SSL 证书,可以通过https://www.example.com.

我需要做什么才能使安全的 websockets 工作?

0 投票
2 回答
343 浏览

php - 将应用程序逻辑放置在 Thruway 应用程序中的什么位置?

我用 Thruway 和 Autobahn.js 构建了一个应用程序这是我第一次使用这些技术,我对 Thruway 代码有点迷茫。我在stackoverflow线程中读到:

“所有应用程序特定的代码都应该驻留在 WAMP 应用程序组件中,而不是路由器本身。”</p>

但是把这些具体的代码放在哪里,怎么做?

例如,如果一个客户端订阅了一个聊天室,并且应用程序需要记录一些事情,写入数据库,管理会话,(通常的事情)......事实上,对于每种类型的消息你好,错误,订阅,发布, ETC...

如果你们中的任何人有任何代码,那就太好了。对于我和其他开发人员来说,因为我在 ex 中找不到任何例子。高速公路的目录。

谢谢

0 投票
1 回答
1458 浏览

php - 如何设置从 Thruway 客户端到 Crossbar 路由器的 WAMP 身份验证?

我绕着圈子试图让这个工作......

情况如下:

我有一个 PHP Web 应用程序,它使用Thruway通过Crossbar.io路由器对多个微服务进行远程过程调用 (RPC) 。匿名呼叫运行良好,但现在我想添加身份验证。

这是横杆配置:

Crossbar 服务器(我希望)仅设置为路由器。所有客户端/工作人员都在其他服务器上。我一直在关注Crossbar 配置的这个例子——特别是这个配置文件。示例和我的配置之间有几个重要的区别:示例服务器既配置为路由器,也提供静态网页(我的没有),示例服务器包含一个 Python 组件(如果我正在阅读它正确)对身份验证过程并不重要。

在我的开发环境中,我试图让身份验证为一个客户工作。这是客户端代码:

问题是服务器永远不会发送“挑战”消息。当客户端尝试连接时,我收到以下调试消息:

谁能解释我需要做哪些额外的配置才能让服务器挑战客户端?

0 投票
1 回答
954 浏览

php - voryx 高速公路多重发布

我需要从 php 脚本发布消息,我可以很好地发布一条消息。但是现在我需要循环发布不同的消息,找不到正确的方法,这是我尝试过的:

在这里,我想向订阅者发布 $counter 值,但该值始终为 5, 1.有没有办法在循环之前打开连接,然后在循环中发布消息 2.如何访问 $session->publish() 从环形 ?

谢谢!