javascript - 如何在 Linnworks 嵌入式应用程序中获取刷新的令牌?
问题描述
鉴于 Linnworks 提供的支持不存在,我想我会尝试在这里发布我的问题。
我在 Linnworks 中创建了一个私有嵌入式应用程序,它以电子表格格式显示订单。该应用程序是使用 Vue.js 构建的,并使用 axios 从 Linnworks API 中提取数据。一切正常,除了我一次只返回 100 个订单以保持快速。
我添加了一个“加载更多订单”按钮,该按钮将额外的 100 个订单附加到工作表的末尾,但在一段时间不活动后,这会导致“401 未经授权的错误”,因为令牌已过期。
因为它是一个嵌入式应用程序,所以 Linnworks 在应用程序初始化时将令牌存储在 iframe 的 src 中,因此当它过期时,系统不会对其进行物理刷新。
<iframe src="https://example.com/sheet.html?token=9b11e8ff-4791-aca5-b58d-f6da84e996a6"></iframe>
有没有办法在不重新加载整个应用程序的情况下获取刷新的令牌?
解决方案
令牌的默认 TTL 为 30 分钟,只需使用简单的方法轮询 API,例如/api/Main/Ping
保持令牌/会话处于活动状态
推荐阅读
- node.js - Nodejs MongoDB,findOneAndUpdate 没有更新任何数据
- python - 如何修复在 python 中显示“拒绝访问”的 PIL Image._show()?
- php - Nodejs websocket请求到php
- json - 如何用jq替换json文件中的值?
- verilog - 在 Verilog 中连接无界信号,(可合成)
- c# - WCF 服务在从控制台托管的浏览器中不起作用
- mysql - nodejs到mysql的连接被root拒绝
- html - css网格的垂直间距问题
- android - 在flutter webview应用程序中自动打开意图应用程序
- android - 软键盘隐藏了我的模态底部工作表编辑文本