我正在研究一个系统的PoC,其中移动应用客户端需要在服务器上连接,并且通信双向:用于更新服务器或由其更新。目前没有客户端到客户端的通信。
客户端通过HTTPS / POST方法登录服务器,如果凭据正常,则返回令牌。此令牌将由任何进一步的通信使用,以便对用户进行身份验证。我使用HTTPS登录的原因是还有一个用于其他目的的Web界面。
我找不到解释如何使用基于websocket传输的渠道实现此用例的教程或文档。到目前为止我发现的所有内容都是局部的,并且专注于某些特定方面(例如,身份验证,设置SSL / TLS等)并假设读者已经知道其余部分或者是聊天应用程序的过度简化实现。我确定我没有找到合适的地方......
我的问题是:
实现此用例的回调列表是什么? 任何一方
在服务器上:进程如何向该服务器发送通知 客户端
注意:我使用的是Elixir 1.5.1和Phoenix 1.3
答案 0 :(得分:0)
每个频道都会实施这四个回调函数中的每一个的一个或多个子句 -
join/3
,terminate/2
,handle_in/3
和handle_out/3
。
我链接的页面还包含在Phoenix上运行的MCVE套接字。在底部有一些Phoenix guide如何完成的例子。
将此问题应用于您的用例的唯一方法是使用一个身份验证库(例如server-client communication附带的Überauth
)来处理每个后续连接请求上的令牌。