becomer 4f9027bb0f 修返校登记图片上传 400:该类任务误用签到模块的上传策略
现象(用户 19865075523,返校签到编辑表单上传图片):
  图片上传到 OBS 失败(400),请重新选择照片上传

根因:返校登记是独立模块,API 前缀为
  /wec-counselor-leave-return-apps
但 getImageUrlPrefix 没有该分支,taskType=return_register 落到 default,
于是去 /wec-counselor-sign-apps/stu 取上传策略;拿到的是签到桶/签名,
浏览器直传到 OBS 时被拒 400。

改动:
- 新增 GetLeaveReturnUploadPolicy:
  POST {leave-return}/stu/obsOperate/obs/getUploadPolicy
  (路径参照同族 leave-new 模块,复用 leaveReturnPost 的 Header 与错误处理)
- 新增 GetLeaveReturnPreviewURL:
  POST {leave-return}/stu/obsOperate/obs/previewAttachment
  (原先同样落到 sign 的 /sign/previewAttachment,取不到预览)
  并对部分学校把地址放 message 的情况做兜底
- GetUploadPolicy / GetPreviewUrl 两个 handler 均加 return_register 分支,
  并接入 cookie 过期自动续期与 needReLogin 判定
- getImageUrlPrefix 补 return_register 映射并加注释,避免再次静默走错模块

诊断增强:
- GetUploadPolicy 记录 formData 的字段名与 host(不含值);
  若 formData 为空则告警并输出响应片段——因为 formData 为空会让前端
  回退到自行拼装字段的旧分支,那正是历史上被 OBS 拒绝的原因

测试:return_register 前缀必须为 leave-return 模块且不含 sign-apps;
签到/查寝/请假的既有映射不变。
2026-10-18 18:51:17 +08:00
S
Description
No description provided
6.6 MiB
Languages
Go 58.2%
Vue 35.3%
TypeScript 4.1%
CSS 1.5%
JavaScript 0.6%
Other 0.2%