Erlang Cowboy、服务器端事件、事件源关闭并大约每60秒重新连接一次
我在本地Debian服务器上运行了cowboy示例eventsource。有关代码,请参见--> 大约60秒后,始终会出现“eventsource已关闭”消息,然后是“eventsource已连接”消息 我正在win10上测试最新的chrome浏览器 我看不出有什么原因,我想知道这是否是SSE标准中内置的东西,即定期断开连接 chrome调试器显示以下错误消息: 获取网络::错误\u不完整\u分块\u编码200(确定) 有什么想法吗Erlang Cowboy、服务器端事件、事件源关闭并大约每60秒重新连接一次,erlang,cowboy,Erlang,Cowboy,我在本地Debian服务器上运行了cowboy示例eventsource。有关代码,请参见--> 大约60秒后,始终会出现“eventsource已关闭”消息,然后是“eventsource已连接”消息 我正在win10上测试最新的chrome浏览器 我看不出有什么原因,我想知道这是否是SSE标准中内置的东西,即定期断开连接 chrome调试器显示以下错误消息: 获取网络::错误\u不完整\u分块\u编码200(确定) 有什么想法吗 MPC您很可能遇到空闲超时 您可以在中使用以下代码段对其进行更
MPC您很可能遇到空闲超时 您可以在中使用以下代码段对其进行更改:
您在中获得了有关ProtocolOpts的更多信息。您尝试了这一点,并获得了正确答案。这似乎与空闲时间有关。但不确定原因,因为eventsource示例每秒都向客户端发送数据。这表明这是一个客户端空闲时间?不管怎样,谢谢你的帮助。文档中说空闲超时是以毫秒为单位的时间,在Cowboy关闭连接之前没有收到任何数据。因为在规范中它应该是一个
超时()
,我很确定你可以将它设置为“无穷大”
,而不是15000@mpc (对不起,我忘了在前面的评论中与您见面,它可能对您有用)
{ok, _} = cowboy:start_clear(http, [{port, 8080}], #{
idle_timeout => 15000,
env => #{dispatch => Dispatch}
}),