问题标签 [wamp-protocol]
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.
crossbar - 是否可以使用 WAMP 进行流式 RPC 调用?
我想使用 websocket 将WAMP协议用于 RPC 和 Pub/Sub。特别是,我对使用crossbar.io作为 WAMP 服务器很感兴趣。
我通读了 WAMP 的规范,但不清楚是否可以将数据作为来自客户端的 RPC 调用的一部分进行流式传输。不过,似乎支持从服务器流式传输结果。
编辑:我想澄清一下,我指的是人们可能称之为渐进式请求的东西,而不是简单地充当客户端的服务器。
python - 可以使用 Crossbar.io 和 WAMP 传输文件吗?
是否可以使用 WAMP / Crossbar 发送小的简单文件,例如.txt
?
目前,我在 Python 中有这段教程代码:
如何让 Python 发送文件而不仅仅是“1”?
这是一个紧迫的需求 - 任何有关如何做到这一点的帮助将不胜感激。
php - 如何设置从 Thruway 客户端到 Crossbar 路由器的 WAMP 身份验证?
我绕着圈子试图让这个工作......
情况如下:
我有一个 PHP Web 应用程序,它使用Thruway通过Crossbar.io路由器对多个微服务进行远程过程调用 (RPC) 。匿名呼叫运行良好,但现在我想添加身份验证。
这是横杆配置:
Crossbar 服务器(我希望)仅设置为路由器。所有客户端/工作人员都在其他服务器上。我一直在关注Crossbar 配置的这个例子——特别是这个配置文件。示例和我的配置之间有几个重要的区别:示例服务器既配置为路由器,也提供静态网页(我的没有),示例服务器包含一个 Python 组件(如果我正在阅读它正确)对身份验证过程并不重要。
在我的开发环境中,我试图让身份验证为一个客户工作。这是客户端代码:
问题是服务器永远不会发送“挑战”消息。当客户端尝试连接时,我收到以下调试消息:
谁能解释我需要做哪些额外的配置才能让服务器挑战客户端?
python - 如何在不使用“crossbar start”命令的情况下运行 corssbar
我正在尝试理解 crossbar,我想为我的博客做一个演示,它是用 Django (python) 制作的。我的演示工作正常,但我不明白:如何在不需要使用“crossbar start”命令的情况下使 crossbar 解决方案工作。我的意思是,我希望像我的 Apache 服务器那样分离交叉开关。不可能吗?
PS:我在 Debian 8 上使用 Django 1.7、Apache 2.4。
php - voryx 高速公路多重发布
我需要从 php 脚本发布消息,我可以很好地发布一条消息。但是现在我需要循环发布不同的消息,找不到正确的方法,这是我尝试过的:
在这里,我想向订阅者发布 $counter 值,但该值始终为 5, 1.有没有办法在循环之前打开连接,然后在循环中发布消息 2.如何访问 $session->publish() 从环形 ?
谢谢!
websocket - 使用 autobahn.js 的浏览器客户端无法连接到 Ratchet Websocket Server
我正在努力解决一个问题:我使用 PHP Ratchet socketo.me开发了一个 Ratchet Web Socket 服务器
我的服务器已启动并正在监听端口8082
:
我的帖子脚本:post.php
我的 pusher.php
我通过发送数据检查了我的服务器是否已启动,post.php
并且我正在使用onBlogEntry()
方法获取数据
问题是当浏览器尝试打开与我的服务器的连接时,它总是给出连接超时错误:
任何人都知道出了什么问题,请帮忙。
python - 从 python 守护进程发布到 crossbar.io
我想使用 crossbar.io 在网络上显示有关长期运行的 python 守护程序的实时统计信息。显示部分使用 AutobahnJS 可以正常工作,但我很难将统计信息发布到 crossbar.io 的部分。我阅读的所有示例代码都在twisted 或asyncio 上运行,而我的守护进程不会(也不会)。对于纯 WebSockets,有websocket_client包,它完全符合我的要求,只是不在 WAMP 上。是否有类似的库,或者我在文档中遗漏了什么?
我在纯 WebSockets 上使用 crossbar.io,因为我喜欢 PubSub 抽象。我知道我可以在 WebSockets 中重新实现它而无需大量额外工作,但这是我想避免的。
c# - 未调用 WampSharp ConnectionEstablished 回调
我目前正在尝试 WAMP 协议的 WampSharp 实现。
我希望代码在客户端连接到控制台时在控制台上打印一条消息。所以我创建了一个路由器和一个客户端。但是该消息不会出现在控制台中。这是我的代码:
路由器
客户:
这可能是 C# 问题而不是 WampSharp 问题,但以防万一我将两个 wamp 标签放在这个问题上。
ios - 通过桥接头从 SWIFT 调用目标 c 函数
我已经将一个objective-c 包移植到一个swift 包中,并将它包含在桥接头中。一切正常,除了我必须从无法工作的委托中实现一个功能:
有谁知道我如何在 SWIFT 中实现这一点?
java - jjaampa 最大 websockt 帧大小?
发布事件时参数是否有最大大小?
我使用这段代码(java):wampClient.publish(token, response.toString());
response.toString()
在我的情况下是一个长的 json 字符串。它有大约 70.000 个字符。我怀疑事件没有发布,因为当我response.toString()
用短字符串替换时,事件会按预期发布。
我不太了解 Wamp 的内部结构,并且对代码的初始调试会话并没有为我提供太多洞察力。正如我上面所说,我认为长字符串会导致一些问题。
最小运行示例:要获得最小运行示例,请从此处下载示例 java 项目:http ://we.tl/a3kj3dzJ7N并将其导入您的 IDE。
在演示文件夹中有两个 .java 文件:Client.java
运行Server.java
/启动它们,每个都应该出现一个 GUI。然后执行以下过程(C = 客户端,S = 服务器):
根据消息的大小,您将在 IDE 的控制台上看到不同的输出。可以通过整数变量在第 137 行更改消息的大小。正如上面已经解释的:如果低于 70000(例如 60000),一切都按预期工作。的控制台输出如下:Client.java
size
size
Client.java
但是,如果整数变量size
更改为 70000(或更高),则输出如下:
如您所见,Received 事件 ...丢失,因此未收到该事件。但是,有Completed 事件 test.event,但数据明显丢失。
综上所述,运行上面的示例可以看到,当传输的字符串的大小大于 70000 时,没有正确接收到事件。这个问题可能与 netty 相关,因为它是在jawampa的 hood 下使用的。任何帮助表示赞赏。也许它只是一些可以解决这个问题的小配置。
编辑1:我用可以下载的最小运行示例更新了问题。
编辑 2:我想我现在知道问题的根源(虽然完全不确定,请参阅 EDIT3)。它与java中字符串文字的允许大小有关。请参阅:Java 中初始化字符串的大小 在上面的示例中,我可以反映这一点。如果 size 变量小于 65535 个字符,则有效,否则无效。有解决方法吗?
EDIT 3 aka SOLUTION:正如开发人员所建议的(参见此处),NettyWampConnectionConfig.javaDEFAULT_MAX_FRAME_PAYLOAD_LENGTH
:8中的变量应更改为更高的值。然后一切都像魅力一样。