diff --git a/clinical-web/README.md b/clinical-web/README.md index af324c3..351360a 100644 --- a/clinical-web/README.md +++ b/clinical-web/README.md @@ -262,7 +262,7 @@ API 模块与页面按业务域对应。工作台页面使用 `api/workbench` API 请求和响应类型按业务域放在 `api/workbench/types.ts`、`api/management/types.ts`;页面展示和交互类型放在对应 View 目录的 `types.ts`;全局复用类型放在 `types/common.ts`。页面提交模型会在 API 边界转换为后端 DTO,不向后端发送患者快照、文档名称或明文手机号等页面字段。 -开发环境默认使用 `/api` 作为同源接口前缀,Vite 会将 `/api` 转发到 `https://ipad.shenynet.com`,因此浏览器不会直接跨域请求后端。代理配置位于 `vite.config.ts`,不改写 `/api/v1/...` 路径。修改代理或环境变量后需要重启 Vite 开发服务。 +开发环境默认使用 `/api` 作为同源接口前缀,Vite 会将 `/api` 转发到 `https://ipad.shenynet.com`,因此浏览器不会直接跨域请求后端。代理配置位于 `vite.config.ts`,不改写 `/api/v1/...` 路径。联调本地后端时可用 `VITE_API_PROXY_TARGET=http://127.0.0.1:18080 npm run dev` 覆盖目标。修改代理或环境变量后需要重启 Vite 开发服务。 生产环境不会使用 Vite 的开发代理,需要在 Nginx 或其他网关中配置同样的 `/api` 反向代理。Mock 开关按业务模块(对齐菜单)拆分,缺省使用演示数据的只有签署侧(签署工作台 `VITE_MOCK_SIGNING`、签署记录查询 `VITE_MOCK_SIGN_RECORDS`)与「报表分析」目录下的四个菜单(`VITE_MOCK_REPORT_ANALYTICS`,后端没有分析聚合接口),其余模块直接调用真实后端;各开关的环境变量名与缺省值见 `src/utils/mock-flags.ts`,需要临时切换时在本地 `.env.*.local` 里覆盖即可。使用本地开发代理时,`VITE_API_BASE_URL` 应填写 `/api`;如果改为直连后端,则需要后端配置允许当前前端源的 CORS。 diff --git a/clinical-web/vite.config.ts b/clinical-web/vite.config.ts index c0584e5..5ac8403 100644 --- a/clinical-web/vite.config.ts +++ b/clinical-web/vite.config.ts @@ -11,6 +11,7 @@ function resolveBuildId() { // https://vite.dev/config/ export default defineConfig(() => { const buildId = resolveBuildId() + const apiProxyTarget = process.env.VITE_API_PROXY_TARGET?.trim() || 'https://ipad.shenynet.com' return { plugins: [vue()], @@ -26,7 +27,7 @@ export default defineConfig(() => { server: { proxy: { '/api': { - target: 'https://ipad.shenynet.com', + target: apiProxyTarget, changeOrigin: true, secure: true, }, diff --git a/patient-h5/README.md b/patient-h5/README.md index 0121bb0..ab4f2b3 100644 --- a/patient-h5/README.md +++ b/patient-h5/README.md @@ -56,7 +56,7 @@ Vant、Zod、PDF 预览、第三方签名组件和自动化测试暂不接入; ## API 接入 -开发环境默认使用 `/api`,由 `vite.config.ts` 代理到 `https://ipad.shenynet.com`;生产环境需要由 Nginx 或医院网关配置同路径反向代理。 +开发环境默认使用 `/api`,由 `vite.config.ts` 代理到 `https://ipad.shenynet.com`;本地联调可通过 `VITE_API_PROXY_TARGET=http://127.0.0.1:18080 npm run dev` 覆盖目标。生产环境需要由 Nginx 或医院网关配置同路径反向代理。 已接入的真实接口: diff --git a/patient-h5/vite.config.ts b/patient-h5/vite.config.ts index c0584e5..5ac8403 100644 --- a/patient-h5/vite.config.ts +++ b/patient-h5/vite.config.ts @@ -11,6 +11,7 @@ function resolveBuildId() { // https://vite.dev/config/ export default defineConfig(() => { const buildId = resolveBuildId() + const apiProxyTarget = process.env.VITE_API_PROXY_TARGET?.trim() || 'https://ipad.shenynet.com' return { plugins: [vue()], @@ -26,7 +27,7 @@ export default defineConfig(() => { server: { proxy: { '/api': { - target: 'https://ipad.shenynet.com', + target: apiProxyTarget, changeOrigin: true, secure: true, },