kuzzle - 是否可以自动排队请求直到 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.playQueue方法播放离线队列。您还需要在Kuzzle 构造函数autoReplay
中设置为 false
推荐阅读
- python - 读取文本文件时未检测到某些行?
- reactjs - “Access-Control-Allow-Origin”标头已被 CORS 策略阻止
- c++ - 复制包含字符串的 CORBA::Any 时 CORBA 程序段错误
- python - Python 封闭函数
- docker - 使用 Nginx 的 Dockerized 应用程序(通过 docker-compose) - 502 Bad Gateway Error
- c# - 如何将数据从一个 sqlite 数据库复制到 wpf 中的另一个 sqlite 数据库?
- r - R - 仅计算去年的交易数量
- jmeter - 在 jmeter 中是否无法在 chrome 或 fire fox 浏览器中重新运行录制的脚本?
- laravel - Nova 资源和模型上的急切负载
- macos - 如何在 macOS Sierra 10.13.1 上卸载 apache2