![](/img/trans.png)
[英]Call procedure registered in javascript from python server Autobahn, Wamp
[英]how to make Autobahn WAMP Python server & Javascript client work together?
我有一个Python Autobahn WAMP服务器(v。0.8.8,应用程序代码位于http://pastebin.com/DfQvaJYF ),可以与Python客户端正常工作。 使用最新的Twisted 13.2。 对于服务器和客户端。
但是,类似地从Autobahn JS示例中获取的浏览器javascript客户端(来自CDN的autobahn js,应用程序代码位于http://pastebin.com/1GGaRP5e )订阅了一个主题,但是没有收到任何消息。 任何地方都没有错误。 使用Node.js运行客户端时,也会发生同样的情况。
检查服务器日志,我发现确实没有传输任何内容-在js Web或Node.js客户端连接并订阅之后,就没有TX WAMP事件。
WAMP服务器在端口8080上运行,并且JS Web客户端页面从端口8111提供服务。两者都在同一主机上。
找到了问题。 谢谢@oberstet发表评论(见上文)。 虽然只是客户端领域设置为建议的默认realm1没有工作,导致我走向解决方案。
简短而简单的答案是Python WAMP服务器应始终显式设置领域 。 至少当服务器实现了子类wamp.ApplicationSession的组件时才适用 (在高速公路网站上有许多示例或所有示例)。
换句话说,在服务器中必须有一个加入领域的onConnect函数。 没有它,
解决方案之外的一些推测:如果可以构建一个无需设置领域即可工作的Javascript客户端(我使用的示例需要显式领域),那么这样的客户端也可以工作。 也许Python WAMP服务器代码的默认领域设置有问题。 也许只是默认值已更改。 我不知道。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.