- 移除导入失败原因中的“第N行”前缀,简化信息展示 - 失败原因编号从字母改为数字序号,提升可读性 - 备注超长提示编号改为数字编号,保持格式统一 - 保留导入失败原因列标红及列宽自动换行等已有样式调整
21 lines
1.7 KiB
Markdown
21 lines
1.7 KiB
Markdown
# 2026-08-05 工作记录
|
||
|
||
## 排查:改线上接口后前端"运行不了"(CORS 根因)
|
||
|
||
- 现象:用户将 `.env.development` 的 `VITE_APP_API` 改为 `http://172.16.203.228:8000/api`(直连线上/测试后端)后仍运行不了。
|
||
- 根因:Saber3 的 axios 配了 `withCredentials = true`(`src/axios.js:79`)。该后端(openresty + blade-gateway)对跨域请求返回 `Access-Control-Allow-Origin: *` 且 `Access-Control-Allow-Credentials: true`,浏览器规定 credentials 模式下 Allow-Origin 不能是 `*`,非法组合会被直接拒绝 → 所有接口失败。
|
||
- 之前用 `/api` 能跑是因为走 Vite 代理,浏览器请求同源 localhost:2888,不触发跨域。
|
||
- 已改动:
|
||
1. `.env.development` 的 `VITE_APP_API` 改回 `/api`,并加注释说明两种模式。
|
||
2. `vite.config.mjs` 的 `server.proxy['/api']` target 改为 `http://172.16.203.228:8000`,并去掉 `rewrite` 去掉 `/api` 的逻辑(保留 `/api` 前缀,对齐 openresty 期望路径)。
|
||
- 注意:改 `.env` / `vite.config.mjs` 后必须重启 `npm run dev`(Vite 启动时加载环境变量,运行中改动不会热更新)。
|
||
- 若确需直连绝对地址(如生产/部署):必须让后端 CORS 把 Allow-Origin 改为具体前端域名(blade-gateway 的 CorsConfig 用 `setAllowedOriginPatterns` 或显式域名),不可用 `*` 配合 credentials。
|
||
|
||
## 调整:货物类型导入失败原因展示格式
|
||
|
||
- 文件:`src/views/base/cargo-type.vue`
|
||
- 修改 `decorateCargoTypeFailDetail`:
|
||
- 移除「第N行:」前缀;
|
||
- 失败原因编号从 `A. B. C.` 改为 `1. 2. 3.`;
|
||
- 备注超长兜底提示也同步使用数字编号。
|