我正在使用 Opa 制作在线多人游戏,并且对如何操作客户端连接有一些疑问。
这是我的代码摘录:
function game_view(){
function page_ready(){
// observe game messages
_ = Network.observe(game_msg_received,game_channel);
// set disconnect function
_ = ClientEvent.set_on_disconnect_client(function(c){
//do something when client is disconnected
...
});
}
<div onready={function(_){ page_ready() }}>
//page content
...
</div>
}
关闭选项卡或窗口后,断开连接功能大约 2 分钟生效(我猜是 4 次 ping 失败的时间),对于我的情况来说太长了,我可以调整它吗?如何调整?
当我离开此页面(关闭标签或跳转到其他页面)时,一段时间后会出现一些错误消息,如下所示:
[SESSION] 未捕获的异常:“{OpaRPC_Server: {timeout: {client: {client: $"46rrpwmeiq28ql0d8lgz7e35zt8d701c"$; page: $934885115$}; fun_id: $"__set_game_Mygame"$}}}" 跳过以下消息。:如果你想要 (msg, st, ctx) 调试打印设置调试变量 session_debug >= 200
我认为这是因为该页面不再存在但功能'game_msg_received'仍然尝试在收到游戏消息时通知此页面,那么我该如何避免这个错误?