繁体   English   中英

Laravel Echo / Socket.io 在睡眠后保持连接活动

[英]Laravel Echo / Socket.io keeping connection alive after sleep

我在后端使用laravel echo server + Redis (使用默认配置),在 Vue 前端使用laravel-echosocket.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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM