我正在使用WAMP.ws规范在我的网站上设计公共/私人用户聊天室。
当我尝试保留所有已连接用户的列表时,就会出现我的问题。我能做什么:
->但是我如何信任用户?任何用户都可以发送带有随机“ user_id”参数的“ Hello”消息。
对我来说,服务器必须在广播消息之前进行一些检查。但这是否符合WAMP.js规范?我读过,已发布的消息始终由服务器广播。
另一个解决方案可能是使用RPC调用来连接用户。实际上,我这样做是为了对用户进行身份验证。但是服务器本身是否可以将事件广播到主题“ /联系人/连接”?(在RPC调用之后,而不是在“发布”消息之后),我已经了解到事件仅仅是客户端“发布”的直接结果。而且,这将不会阻止普通用户发送“ /联系/连接”事件,该事件将由服务器广播。
我觉得我的两个解决方案(在广播之前检查发布的消息,或者在RPC调用之后由服务器广播事件)都违反了WAMP.js规范。我错了吗 ?
谢谢
WAMP区分
身份验证在WAMP路由器上建立WAMP客户端的身份。
当使用Autobahn | Python滚动您自己的WAMP路由器时,这里有多个示例显示了如何实现不同的身份验证机制。
使用Crossbar.io(集成的,可投入生产的WAMP路由器)时,内置了身份验证机制(此处)。
授权确定是否允许给定的WAMP客户端对给定的URI执行WAMP操作(例如发布或调用)。
当使用高速公路| Python的推出自己的WAMP的路由器,这里是展示如何实现自定义授权的例子。
Crossbar.io具有内置的静态授权方案,并允许注册自定义WAMP程序以进行授权(此处)。
最后,还有Validation,它检查事件或调用的应用程序级别有效负载。
这是高速公路| Python的示例。Crossbar.io很快将允许注册自定义WAMP程序进行验证。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句