feat: 更新 API 路径配置并优化环境变量管理

- 修改 .env.example,更新玩家端本地配置说明,新增直连 Laravel 和局域网 IP 访问配置项,提升开发灵活性。
- 更新 middleware.ts,使用新的 LOTTERY_API_V1_BASE 常量构建 API 请求路径,简化代码结构。
- 在 next.config.ts 中引入 parseAllowedDevOrigins 函数,动态解析允许的开发来源,增强安全性。
- 重构多个 API 模块,移除 API_V1_PREFIX,直接使用相对路径,简化 API 调用逻辑,提高可维护性。
This commit is contained in:
2026-05-29 10:28:43 +08:00
parent 1316a62ce3
commit 03faed1db6
19 changed files with 71 additions and 42 deletions

View File

@@ -1,5 +1,4 @@
import { lotteryRequest } from "@/lib/lottery-http";
import { API_V1_PREFIX } from "@/api/paths";
import type {
TicketDrawMyMatchPayload,
TicketItemDetailPayload,
@@ -21,7 +20,7 @@ export function getTicketItems(
params?: GetTicketItemsParams,
): Promise<TicketItemsListPayload> {
return lotteryRequest.get<TicketItemsListPayload>(
`${API_V1_PREFIX}/ticket/items`,
`/ticket/items`,
{
params: {
page: params?.page,
@@ -42,7 +41,7 @@ export function getTicketItemDetail(
): Promise<TicketItemDetailPayload> {
const enc = encodeURIComponent(ticketNo);
return lotteryRequest.get<TicketItemDetailPayload>(
`${API_V1_PREFIX}/ticket/items/${enc}`,
`/ticket/items/${enc}`,
);
}
@@ -52,6 +51,6 @@ export function getTicketDrawMyMatch(
): Promise<TicketDrawMyMatchPayload> {
const enc = encodeURIComponent(drawNo);
return lotteryRequest.get<TicketDrawMyMatchPayload>(
`${API_V1_PREFIX}/ticket/draws/${enc}/my-match`,
`/ticket/draws/${enc}/my-match`,
);
}