牛仔websocket处理程序:如何设置第一条消息的超时?

时间:2018-03-19 20:07:46

标签: websocket erlang cowboy

我的服务器和客户端之间有websocket连接,应该保持活动直到客户端关闭它。打开连接时,客户端应通过发送带令牌的第一条消息来验证自己。如果在产卵后的一段时间内,websocket处理程序将不会收到此类消息,它应该终止。如何实现这样的超时?

注意:idle_timeout选项不合适,因为我只需要第一条消息超时。

1 个答案:

答案 0 :(得分:1)

只需在您自己的websocket_init回调中启动计时器即可。 如果用户在超时之前进行身份验证,只需忽略它,您可以通过在用户验证自己时更新状态来实现此目的。

erlang:start_timer文档:

http://erlang.org/doc/man/erlang.html#start_timer-3