add isAlive() to return connection status

This commit is contained in:
luk 2024-09-08 11:51:08 +08:00
parent 207cafa645
commit 3f7ce6b195

View File

@ -6,6 +6,9 @@ const my = {
}
export default {
isAlive () {
return my.socket && (my.socket.readyState === my.socket.OPEN)
},
initSocket (url, relogin = false) {
if (!my.socket || (my.socket.readyState !== my.socket.OPEN && typeof url === 'string')) {
console.log({ _at: new Date().toJSON(), about: `WebSocket is connecting to ${url}...` })
@ -18,7 +21,7 @@ export default {
clearInterval(my.reconnecting)
delete my.reconnecting
// 前端断线重连时,并不会自动提供 _passtoken。在前端的initSocket时应当把_passtoken送过来而后台则对_passtoken做验证后再加socketPool。
// 前端断线重连时,并不会自动提供 _passtoken。在前端initSocket时应当把_passtoken送给后台而后台则对_passtoken做验证后再加socketPool。
if (relogin && uni.getStorageSync('_passtoken')) {
console.log({ _at: new Date().toJSON(), about: 'Reporting owner for reconnecting socket' })
my.socket.send({ data: JSON.stringify({ skevent: 'SOCKET_OWNER_RECONNECT', _passtoken: uni.getStorageSync('_passtoken') }) })