fix(site): 官网 401 自动用 refresh_token 续签重试;资产加构建版本号破缓存

- 新增共享 auth.js(jiuAuth):access token 60 分钟过期后,checkout 提交/
  结果页轮询遇 401 自动 POST /auth/refresh 换新 token 并重试一次,仍失败
  才跳登录——修复「已登录点提交订单却被踢回登录页」
- 登录判定放宽为 access 或 refresh token 任一存在(refresh 7 天有效)
- 所有 JS/CSS 引用加 ?v=构建版本号:修复旧版 nav.js 被浏览器缓存后在新
  页面执行(右上角错位的旧用户面板、带引号的 "张三" 显示)
- nav.js 改经 jiuAuth 读 localStorage(JSON 解码,去掉引号显示)
- 登录页回填上次的门店编号与账号

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JJ1g8XV1YhhmHRzhwWEW7o
This commit is contained in:
wangjia
2026-07-03 21:08:13 +08:00
parent 71909a76d7
commit c010d8b416
8 changed files with 76 additions and 26 deletions
+7
View File
@@ -76,6 +76,13 @@ permalink: /login/
btn.disabled = false; btn.textContent = '登 录';
});
}
// 登录过的浏览器回填门店编号/账号(token 过期重登时少敲两栏)
if (window.jiuAuth) {
var savedShop = jiuAuth.get('shop_no'), savedUser = jiuAuth.get('username');
if (savedShop && !$('shop').value) $('shop').value = savedShop;
if (savedUser && !$('user').value) $('user').value = savedUser;
}
$('loginBtn').addEventListener('click', doLogin);
['shop', 'user', 'pass'].forEach(function (id) {
$(id).addEventListener('keydown', function (e) { if (e.key === 'Enter') doLogin(); });