-
feat(wordaddin): serve manifest with automatic origin rewrite
All checks were successfulDeploy eCourt Note Web to Server / Validate Database Schema (Drizzle) (push) Successful in 3sDeploy eCourt Note Web to Server / Build Web Docker Image (push) Successful in 1m7sDeploy eCourt Note Web to Server / Deploy eCourt Note Web to Server (push) Successful in 4sDeploy eCourt Note Web to Server / Notify Deployment Status (push) Successful in 1sreleased this
2026-10-16 13:54:25 +07:00 | 16 commits to dev since this releasemanifest ของ add-in เดิมเป็น static ใน public/ ฝัง URL dev
(localhost:3000) ทั้งไฟล์ — deploy จริงต้อง rewrite มือเองทุกครั้ง
ก่อนนำไป sideload ใน Wordตอนนี้ serve ผ่าน route แทน: app/wordaddin/manifest.xml/route.ts
อ่าน template (public/wordaddin/manifest.template.xml — ย้ายจาก
manifest.xml ด้วย git mv) แล้วเขียนทับ origin ให้ตรงโฮสต์ที่ขอ
ไฟล์ — dev/UAT/production ดาวน์โหลด manifest.xml ขอ environment
ตัวเองแล้ว sideload ได้ทันที- ถอด requestOrigin จาก N10 route เป็น utils/request-origin.ts
ใช้ร่วม + เพิ่ม heuristic: โฮสต์ไม่ใช่ localhost + proto http =
บังคับ https (Office รับ https เท่านั้น และ hop ภายในหลัง IIS
เป็น http เสมอ — Next server ก็ฉีด x-forwarded-proto เอง จึง
ชี้ขาดจากโฮสต์ปลายทาง ไม่เดาว่า header มาจาก proxy หรือถูกฉีด)
deep link ของ N10 ได้พฤติกรรมเดียวกันเป็นผลพวง - ตรวจ nft trace แล้ว template ถูกดึงเข้า standalone ด้วย (คู่
กับ COPY public จาก commit ก่อน = ชัวร์สองชั้น)
ยืนยัน: tsc + vitest 215 tests ผ่าน · ทดสอบบน dev server ด้วย curl
3 โหมด — direct ได้ http://localhost:3000 (Word ยกเว้น localhost),
ผ่าน proxy ส่ง header ครบได้ https://<โฮสต์>, ผ่าน proxy ไม่ส่ง
proto (กรณี IIS) ได้ https://<โฮสต์> จากการ bump · next build
compile route ผ่าน (ขั้น standalone symlink พังเฉพาะเครื่อง local
Windows สิทธิ์ symlink — ไม่เกี่ยวกับโค้ด Docker build ผ่าน)Co-Authored-By: Claude Code noreply@anthropic.com
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- ถอด requestOrigin จาก N10 route เป็น utils/request-origin.ts