[英]Laravel Echo / Socket.io keeping connection alive after sleep
我在后端使用laravel echo server
+ Redis
(使用默认配置),在 Vue 前端使用laravel-echo
和socket.io-client
。
这是我的用例:每当提交新订单时,我使用laravel-echo
用新提交的订单更新订单列表。
只要连接的设备(即 iPhone)处于唤醒状态,一切正常。
我的问题是在设备处于睡眠状态时提交新订单的情况。 唤醒设备后,订单列表不会更新(如果在唤醒设备后提交了新订单 - 列表会按应有的方式更新)。
如何使用设备休眠时提交的新订单更新列表?
这是我到目前为止得到的。 急于看看是否有更好的主意:
export default {
async beforeMount () {
await this.updateOrders()
const vm = this
Echo.channel('update-orders-channel')
.listen('NewOrderEvent', async (e) => {
await vm.updateOrders(e)
})
Echo.connector.socket.on('reconnecting', async () => {
await vm.updateOrders()
})
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.