首页 > 解决方案 > 是否可以自动排队请求直到 kuzzle 重新上线(使用 JS SDK)

问题描述

有时会在服务器断开连接时发送请求,这会导致以下错误:

Error: Unable to execute request: not connected to a Kuzzle server.
Discarded request: ...

或者处理这种情况的最佳做法是什么?

目前我只是在发送之前测试我的本地标志 isConnected 是否设置为 true 或 false,但我不能永远循环等待 kuzzle 重新联机。看到这个文档(offlineMode 和 autoQueue)后进行编辑: https : //docs.kuzzle.io/sdk/js/7/core-classes/kuzzle/constructor/#arguments 但是在使用了 offlineMode 和 autoQueue 之后,当 kuzzle 重新上线时我得到:

error: [KuzzleError: Insufficient permissions to execute this action.
         at WebSocketProtocol.query

似乎 deQueue 是在设置 jwt 令牌(我正在使用 apikey)之前发生的。请问有什么建议吗?

标签: kuzzle

解决方案


您从 Kuzzle 收到此错误,因为您可能不再经过身份验证。
可能是您的身份验证令牌已过期。

从连接丢失中恢复时,您可能希望先登录,然后使用Kuzzle.playQueue方法播放离线队列。您还需要在Kuzzle 构造函数autoReplay中设置为 false


推荐阅读