修改 .env.example,优化环境切换说明,并新增 API_BASE_URL 配置项,提升配置管理能力。 更新 next.config.ts:使用 API_BASE_URL 代理 API 请求,增强开发与生产环境的灵活性。 重构 iframe-bridge 与 use-token-refresh 组件,采用新的 iframe 来源校验方法,提升安全性检查能力。 优化 csp-config.ts:动态注入允许的父级来源(parent origins)到 CSP 配置中,强化安全策略。 调整 lottery-http:通过 Next.js 代理转发 API 请求,简化 API 调用流程。
33 lines
700 B
TypeScript
33 lines
700 B
TypeScript
import type { NextConfig } from "next";
|
||
|
||
import { nonCspSecurityHeaders } from "./src/lib/csp-config";
|
||
|
||
const lotteryApiProxyTarget =
|
||
process.env.API_BASE_URL?.trim() || "http://127.0.0.1:8000";
|
||
|
||
const nextConfig: NextConfig = {
|
||
allowedDevOrigins: ["192.168.0.101"],
|
||
reactCompiler: true,
|
||
|
||
// 非 CSP 安全头;CSP 由 middleware 按后台接入站点白名单动态生成。
|
||
async headers() {
|
||
return [
|
||
{
|
||
source: "/:path*",
|
||
headers: nonCspSecurityHeaders,
|
||
},
|
||
];
|
||
},
|
||
|
||
async rewrites() {
|
||
return [
|
||
{
|
||
source: "/api/:path*",
|
||
destination: `${lotteryApiProxyTarget}/api/:path*`,
|
||
},
|
||
];
|
||
},
|
||
};
|
||
|
||
export default nextConfig;
|