refactor(api): 简化 API 路径定义,移除 API_V1_PREFIX
更新多个 API 文件,将 API_V1_PREFIX 替换为直接使用 /admin 路径。 简化 API 路径定义逻辑,提升代码可读性与维护性。 统一后台管理接口的路由配置,确保各管理端 API 端点保持一致性。
This commit is contained in:
@@ -1,10 +1,9 @@
|
|||||||
import { adminRequest } from "@/lib/admin-http";
|
import { adminRequest } from "@/lib/admin-http";
|
||||||
|
|
||||||
import { API_V1_PREFIX } from "./paths";
|
|
||||||
|
|
||||||
import type { AdminAuditLogListData } from "@/types/api/admin-audit";
|
import type { AdminAuditLogListData } from "@/types/api/admin-audit";
|
||||||
|
|
||||||
const A = `${API_V1_PREFIX}/admin`;
|
const A = `/admin`;
|
||||||
|
|
||||||
export async function getAdminAuditLogs(params?: {
|
export async function getAdminAuditLogs(params?: {
|
||||||
page?: number;
|
page?: number;
|
||||||
|
|||||||
@@ -10,7 +10,6 @@ import type {
|
|||||||
} from "@/types/api/admin-auth";
|
} from "@/types/api/admin-auth";
|
||||||
import { adminRequest } from "@/lib/admin-http";
|
import { adminRequest } from "@/lib/admin-http";
|
||||||
|
|
||||||
import { API_V1_PREFIX } from "@/api/paths";
|
|
||||||
|
|
||||||
/** `GET /api/v1/admin/auth/captcha`(无需 Token) */
|
/** `GET /api/v1/admin/auth/captcha`(无需 Token) */
|
||||||
export async function getAdminCaptcha(): Promise<AdminAuthCaptchaResponse | null> {
|
export async function getAdminCaptcha(): Promise<AdminAuthCaptchaResponse | null> {
|
||||||
@@ -19,7 +18,7 @@ export async function getAdminCaptcha(): Promise<AdminAuthCaptchaResponse | null
|
|||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
return await publicAdminRequest<AdminAuthCaptchaResponse>({
|
return await publicAdminRequest<AdminAuthCaptchaResponse>({
|
||||||
url: `${API_V1_PREFIX}/admin/auth/captcha`,
|
url: `/admin/auth/captcha`,
|
||||||
method: "GET",
|
method: "GET",
|
||||||
});
|
});
|
||||||
} catch {
|
} catch {
|
||||||
@@ -32,7 +31,7 @@ export async function postAdminLogin(
|
|||||||
body: AdminAuthLoginRequest,
|
body: AdminAuthLoginRequest,
|
||||||
): Promise<AdminAuthLoginResponse> {
|
): Promise<AdminAuthLoginResponse> {
|
||||||
return publicAdminRequest<AdminAuthLoginResponse>({
|
return publicAdminRequest<AdminAuthLoginResponse>({
|
||||||
url: `${API_V1_PREFIX}/admin/auth/login`,
|
url: `/admin/auth/login`,
|
||||||
method: "POST",
|
method: "POST",
|
||||||
data: body,
|
data: body,
|
||||||
});
|
});
|
||||||
@@ -40,5 +39,5 @@ export async function postAdminLogin(
|
|||||||
|
|
||||||
/** `GET /api/v1/admin/auth/me`(需 Token) */
|
/** `GET /api/v1/admin/auth/me`(需 Token) */
|
||||||
export async function getAdminMe(): Promise<AdminAuthMeResponse> {
|
export async function getAdminMe(): Promise<AdminAuthMeResponse> {
|
||||||
return adminRequest.get<AdminAuthMeResponse>(`${API_V1_PREFIX}/admin/auth/me`);
|
return adminRequest.get<AdminAuthMeResponse>(`/admin/auth/me`);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
import { adminRequest } from "@/lib/admin-http";
|
import { adminRequest } from "@/lib/admin-http";
|
||||||
|
|
||||||
import { API_V1_PREFIX } from "./paths";
|
|
||||||
|
|
||||||
import type {
|
import type {
|
||||||
AdminPlayTypeRow,
|
AdminPlayTypeRow,
|
||||||
@@ -11,7 +10,7 @@ import type {
|
|||||||
RiskCapVersionDetail,
|
RiskCapVersionDetail,
|
||||||
} from "@/types/api/admin-config";
|
} from "@/types/api/admin-config";
|
||||||
|
|
||||||
const A = `${API_V1_PREFIX}/admin`;
|
const A = `/admin`;
|
||||||
|
|
||||||
type ConfigVersionListParams = {
|
type ConfigVersionListParams = {
|
||||||
status?: string;
|
status?: string;
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
import { adminRequest } from "@/lib/admin-http";
|
import { adminRequest } from "@/lib/admin-http";
|
||||||
|
|
||||||
import { API_V1_PREFIX } from "./paths";
|
|
||||||
|
|
||||||
import type {
|
import type {
|
||||||
AdminCurrencyCreatePayload,
|
AdminCurrencyCreatePayload,
|
||||||
@@ -10,7 +9,7 @@ import type {
|
|||||||
AdminCurrencyUpdatePayload,
|
AdminCurrencyUpdatePayload,
|
||||||
} from "@/types/api/admin-currency";
|
} from "@/types/api/admin-currency";
|
||||||
|
|
||||||
const A = `${API_V1_PREFIX}/admin`;
|
const A = `/admin`;
|
||||||
|
|
||||||
export async function getAdminCurrencies(): Promise<AdminCurrencyListData> {
|
export async function getAdminCurrencies(): Promise<AdminCurrencyListData> {
|
||||||
return adminRequest.get<AdminCurrencyListData>(`${A}/currencies`);
|
return adminRequest.get<AdminCurrencyListData>(`${A}/currencies`);
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
import { adminRequest } from "@/lib/admin-http";
|
import { adminRequest } from "@/lib/admin-http";
|
||||||
|
|
||||||
import { API_V1_PREFIX } from "./paths";
|
|
||||||
|
|
||||||
import type { AdminDashboardData } from "@/types/api/admin-dashboard";
|
import type { AdminDashboardData } from "@/types/api/admin-dashboard";
|
||||||
import type {
|
import type {
|
||||||
@@ -8,7 +7,7 @@ import type {
|
|||||||
AdminDashboardAnalyticsQuery,
|
AdminDashboardAnalyticsQuery,
|
||||||
} from "@/types/api/admin-dashboard-analytics";
|
} from "@/types/api/admin-dashboard-analytics";
|
||||||
|
|
||||||
const A = `${API_V1_PREFIX}/admin`;
|
const A = `/admin`;
|
||||||
|
|
||||||
/** 首页仪表盘聚合(大厅 + 当期财务/风控/异常转账等,按账号权限填充各块) */
|
/** 首页仪表盘聚合(大厅 + 当期财务/风控/异常转账等,按账号权限填充各块) */
|
||||||
export async function getAdminDashboard(): Promise<AdminDashboardData> {
|
export async function getAdminDashboard(): Promise<AdminDashboardData> {
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
import { adminRequest } from "@/lib/admin-http";
|
import { adminRequest } from "@/lib/admin-http";
|
||||||
|
|
||||||
import { API_V1_PREFIX } from "./paths";
|
|
||||||
|
|
||||||
import type { AdminDrawFinanceSummaryData } from "@/types/api/admin-draw-finance";
|
import type { AdminDrawFinanceSummaryData } from "@/types/api/admin-draw-finance";
|
||||||
import type {
|
import type {
|
||||||
@@ -16,7 +15,7 @@ import type {
|
|||||||
AdminDrawCreateResponse,
|
AdminDrawCreateResponse,
|
||||||
} from "@/types/api/admin-draws";
|
} from "@/types/api/admin-draws";
|
||||||
|
|
||||||
const A = `${API_V1_PREFIX}/admin`;
|
const A = `/admin`;
|
||||||
|
|
||||||
export type AdminDrawListQuery = {
|
export type AdminDrawListQuery = {
|
||||||
page?: number;
|
page?: number;
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
import { adminRequest } from "@/lib/admin-http";
|
import { adminRequest } from "@/lib/admin-http";
|
||||||
|
|
||||||
import { API_V1_PREFIX } from "./paths";
|
|
||||||
|
|
||||||
import type {
|
import type {
|
||||||
AdminIntegrationSiteConnectivityResult,
|
AdminIntegrationSiteConnectivityResult,
|
||||||
@@ -12,7 +11,7 @@ import type {
|
|||||||
AdminIntegrationSiteWithSecrets,
|
AdminIntegrationSiteWithSecrets,
|
||||||
} from "@/types/api/admin-integration-site";
|
} from "@/types/api/admin-integration-site";
|
||||||
|
|
||||||
const A = `${API_V1_PREFIX}/admin`;
|
const A = `/admin`;
|
||||||
|
|
||||||
export async function getAdminIntegrationSites(): Promise<AdminIntegrationSiteListData> {
|
export async function getAdminIntegrationSites(): Promise<AdminIntegrationSiteListData> {
|
||||||
return adminRequest.get<AdminIntegrationSiteListData>(`${A}/integration-sites`);
|
return adminRequest.get<AdminIntegrationSiteListData>(`${A}/integration-sites`);
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
import { adminRequest } from "@/lib/admin-http";
|
import { adminRequest } from "@/lib/admin-http";
|
||||||
|
|
||||||
import { API_V1_PREFIX } from "./paths";
|
|
||||||
|
|
||||||
import type {
|
import type {
|
||||||
AdminJackpotContributionsData,
|
AdminJackpotContributionsData,
|
||||||
@@ -11,7 +10,7 @@ import type {
|
|||||||
AdminJackpotPoolRow,
|
AdminJackpotPoolRow,
|
||||||
} from "@/types/api/admin-jackpot";
|
} from "@/types/api/admin-jackpot";
|
||||||
|
|
||||||
const A = `${API_V1_PREFIX}/admin`;
|
const A = `/admin`;
|
||||||
|
|
||||||
export async function getAdminJackpotPools(): Promise<AdminJackpotPoolsData> {
|
export async function getAdminJackpotPools(): Promise<AdminJackpotPoolsData> {
|
||||||
return adminRequest.get<AdminJackpotPoolsData>(`${A}/jackpot/pools`);
|
return adminRequest.get<AdminJackpotPoolsData>(`${A}/jackpot/pools`);
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
import { adminRequest, hasLotteryAdminApiBaseUrl } from "@/lib/admin-http";
|
import { adminRequest, hasLotteryAdminApiBaseUrl } from "@/lib/admin-http";
|
||||||
import type { AdminPingResponse } from "@/types/api/admin-ping";
|
import type { AdminPingResponse } from "@/types/api/admin-ping";
|
||||||
|
|
||||||
import { API_V1_PREFIX } from "@/api/paths";
|
|
||||||
|
|
||||||
/** `GET /api/v1/admin/ping`(需 Bearer Token) */
|
/** `GET /api/v1/admin/ping`(需 Bearer Token) */
|
||||||
export async function getAdminPing(): Promise<AdminPingResponse | null> {
|
export async function getAdminPing(): Promise<AdminPingResponse | null> {
|
||||||
@@ -10,7 +9,7 @@ export async function getAdminPing(): Promise<AdminPingResponse | null> {
|
|||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
return await adminRequest.get<AdminPingResponse>(
|
return await adminRequest.get<AdminPingResponse>(
|
||||||
`${API_V1_PREFIX}/admin/ping`,
|
`/admin/ping`,
|
||||||
);
|
);
|
||||||
} catch {
|
} catch {
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
@@ -1,10 +1,9 @@
|
|||||||
import { adminRequest } from "@/lib/admin-http";
|
import { adminRequest } from "@/lib/admin-http";
|
||||||
|
|
||||||
import { API_V1_PREFIX } from "./paths";
|
|
||||||
|
|
||||||
import type { AdminPlayerTicketItemsData } from "@/types/api/admin-player-tickets";
|
import type { AdminPlayerTicketItemsData } from "@/types/api/admin-player-tickets";
|
||||||
|
|
||||||
const A = `${API_V1_PREFIX}/admin`;
|
const A = `/admin`;
|
||||||
|
|
||||||
export async function getAdminPlayerTicketItems(
|
export async function getAdminPlayerTicketItems(
|
||||||
playerId: number,
|
playerId: number,
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
import { adminRequest } from "@/lib/admin-http";
|
import { adminRequest } from "@/lib/admin-http";
|
||||||
|
|
||||||
import { API_V1_PREFIX } from "./paths";
|
|
||||||
|
|
||||||
import type {
|
import type {
|
||||||
AdminPlayerListData,
|
AdminPlayerListData,
|
||||||
@@ -10,7 +9,7 @@ import type {
|
|||||||
AdminPlayerDeleteResult,
|
AdminPlayerDeleteResult,
|
||||||
} from "@/types/api/admin-player";
|
} from "@/types/api/admin-player";
|
||||||
|
|
||||||
const A = `${API_V1_PREFIX}/admin`;
|
const A = `/admin`;
|
||||||
|
|
||||||
export async function getAdminPlayers(params?: {
|
export async function getAdminPlayers(params?: {
|
||||||
page?: number;
|
page?: number;
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
import { adminRequest } from "@/lib/admin-http";
|
import { adminRequest } from "@/lib/admin-http";
|
||||||
|
|
||||||
import { API_V1_PREFIX } from "./paths";
|
|
||||||
|
|
||||||
import type {
|
import type {
|
||||||
AdminReconcileItemsData,
|
AdminReconcileItemsData,
|
||||||
@@ -8,7 +7,7 @@ import type {
|
|||||||
AdminReconcileJobListData,
|
AdminReconcileJobListData,
|
||||||
} from "@/types/api/admin-reconcile";
|
} from "@/types/api/admin-reconcile";
|
||||||
|
|
||||||
const A = `${API_V1_PREFIX}/admin`;
|
const A = `/admin`;
|
||||||
|
|
||||||
export async function getAdminReconcileJobs(params?: {
|
export async function getAdminReconcileJobs(params?: {
|
||||||
page?: number;
|
page?: number;
|
||||||
|
|||||||
@@ -2,7 +2,6 @@ import { adminHttp, adminRequest } from "@/lib/admin-http";
|
|||||||
import { withAdminAuthHeader } from "@/lib/admin-auth";
|
import { withAdminAuthHeader } from "@/lib/admin-auth";
|
||||||
import { withAdminLocaleHeaders } from "@/lib/admin-locale";
|
import { withAdminLocaleHeaders } from "@/lib/admin-locale";
|
||||||
|
|
||||||
import { API_V1_PREFIX } from "./paths";
|
|
||||||
|
|
||||||
import type {
|
import type {
|
||||||
AdminReportJobCreatePayload,
|
AdminReportJobCreatePayload,
|
||||||
@@ -11,7 +10,7 @@ import type {
|
|||||||
AdminReportJobRow,
|
AdminReportJobRow,
|
||||||
} from "@/types/api/admin-report-jobs";
|
} from "@/types/api/admin-report-jobs";
|
||||||
|
|
||||||
const A = `${API_V1_PREFIX}/admin/report-jobs`;
|
const A = `/admin/report-jobs`;
|
||||||
|
|
||||||
export async function getAdminReportJobs(params?: {
|
export async function getAdminReportJobs(params?: {
|
||||||
page?: number;
|
page?: number;
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
import { adminRequest } from "@/lib/admin-http";
|
import { adminRequest } from "@/lib/admin-http";
|
||||||
|
|
||||||
import { API_V1_PREFIX } from "./paths";
|
|
||||||
|
|
||||||
import type {
|
import type {
|
||||||
AdminReportDailyProfitRow,
|
AdminReportDailyProfitRow,
|
||||||
@@ -11,7 +10,7 @@ import type {
|
|||||||
AdminReportRebateCommissionRow,
|
AdminReportRebateCommissionRow,
|
||||||
} from "@/types/api/admin-reports";
|
} from "@/types/api/admin-reports";
|
||||||
|
|
||||||
const A = `${API_V1_PREFIX}/admin`;
|
const A = `/admin`;
|
||||||
|
|
||||||
export async function getAdminReportDailyProfit(
|
export async function getAdminReportDailyProfit(
|
||||||
params: AdminReportQueryParams,
|
params: AdminReportQueryParams,
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
import { adminRequest } from "@/lib/admin-http";
|
import { adminRequest } from "@/lib/admin-http";
|
||||||
|
|
||||||
import { API_V1_PREFIX } from "./paths";
|
|
||||||
|
|
||||||
import type {
|
import type {
|
||||||
AdminRiskLockLogListData,
|
AdminRiskLockLogListData,
|
||||||
@@ -9,7 +8,7 @@ import type {
|
|||||||
AdminRiskPoolShowData,
|
AdminRiskPoolShowData,
|
||||||
} from "@/types/api/admin-risk";
|
} from "@/types/api/admin-risk";
|
||||||
|
|
||||||
const A = `${API_V1_PREFIX}/admin`;
|
const A = `/admin`;
|
||||||
|
|
||||||
export type AdminRiskPoolListQuery = {
|
export type AdminRiskPoolListQuery = {
|
||||||
page?: number;
|
page?: number;
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
import { adminRequest } from "@/lib/admin-http";
|
import { adminRequest } from "@/lib/admin-http";
|
||||||
import { API_V1_PREFIX } from "@/api/paths";
|
|
||||||
|
|
||||||
const A = `${API_V1_PREFIX}/admin`;
|
const A = `/admin`;
|
||||||
|
|
||||||
export type AdminSettingItem = {
|
export type AdminSettingItem = {
|
||||||
key: string;
|
key: string;
|
||||||
|
|||||||
@@ -2,7 +2,6 @@ import { adminHttp, adminRequest } from "@/lib/admin-http";
|
|||||||
import { withAdminAuthHeader } from "@/lib/admin-auth";
|
import { withAdminAuthHeader } from "@/lib/admin-auth";
|
||||||
import { withAdminLocaleHeaders } from "@/lib/admin-locale";
|
import { withAdminLocaleHeaders } from "@/lib/admin-locale";
|
||||||
|
|
||||||
import { API_V1_PREFIX } from "./paths";
|
|
||||||
|
|
||||||
import type {
|
import type {
|
||||||
AdminSettlementBatchDetailsData,
|
AdminSettlementBatchDetailsData,
|
||||||
@@ -12,7 +11,7 @@ import type {
|
|||||||
AdminSettlementWorkflowResponse,
|
AdminSettlementWorkflowResponse,
|
||||||
} from "@/types/api/admin-settlement";
|
} from "@/types/api/admin-settlement";
|
||||||
|
|
||||||
const A = `${API_V1_PREFIX}/admin`;
|
const A = `/admin`;
|
||||||
|
|
||||||
export type AdminSettlementBatchListQuery = {
|
export type AdminSettlementBatchListQuery = {
|
||||||
page?: number;
|
page?: number;
|
||||||
|
|||||||
@@ -1,10 +1,9 @@
|
|||||||
import { adminRequest } from "@/lib/admin-http";
|
import { adminRequest } from "@/lib/admin-http";
|
||||||
|
|
||||||
import { API_V1_PREFIX } from "./paths";
|
|
||||||
|
|
||||||
import type { AdminTicketItemsData } from "@/types/api/admin-tickets";
|
import type { AdminTicketItemsData } from "@/types/api/admin-tickets";
|
||||||
|
|
||||||
const A = `${API_V1_PREFIX}/admin`;
|
const A = `/admin`;
|
||||||
|
|
||||||
export type TicketItemsListQuery = {
|
export type TicketItemsListQuery = {
|
||||||
page?: number;
|
page?: number;
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
import { adminRequest } from "@/lib/admin-http";
|
import { adminRequest } from "@/lib/admin-http";
|
||||||
|
|
||||||
import { API_V1_PREFIX } from "./paths";
|
|
||||||
|
|
||||||
import type {
|
import type {
|
||||||
AdminPermissionCatalogData,
|
AdminPermissionCatalogData,
|
||||||
@@ -18,7 +17,7 @@ import type {
|
|||||||
AdminUserUpdatePayload,
|
AdminUserUpdatePayload,
|
||||||
} from "@/types/api/admin-user";
|
} from "@/types/api/admin-user";
|
||||||
|
|
||||||
const A = `${API_V1_PREFIX}/admin`;
|
const A = `/admin`;
|
||||||
|
|
||||||
export async function getAdminUsers(params?: {
|
export async function getAdminUsers(params?: {
|
||||||
page?: number;
|
page?: number;
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
import { adminRequest } from "@/lib/admin-http";
|
import { adminRequest } from "@/lib/admin-http";
|
||||||
|
|
||||||
import { API_V1_PREFIX } from "./paths";
|
|
||||||
|
|
||||||
import type {
|
import type {
|
||||||
AdminPlayerWalletsData,
|
AdminPlayerWalletsData,
|
||||||
@@ -8,7 +7,7 @@ import type {
|
|||||||
AdminWalletTxnListData,
|
AdminWalletTxnListData,
|
||||||
} from "@/types/api/admin-wallet";
|
} from "@/types/api/admin-wallet";
|
||||||
|
|
||||||
const A = `${API_V1_PREFIX}/admin`;
|
const A = `/admin`;
|
||||||
|
|
||||||
export type TransferOrderListQuery = {
|
export type TransferOrderListQuery = {
|
||||||
page?: number;
|
page?: number;
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
export { API_V1_PREFIX } from "@/api/paths";
|
export { ADMIN_API_BASE, LOTTERY_API_V1_BASE } from "@/api/paths";
|
||||||
export { getDrawCurrent } from "@/api/public-draw";
|
export { getDrawCurrent } from "@/api/public-draw";
|
||||||
export { getAdminRiskPools } from "@/api/admin-risk";
|
export { getAdminRiskPools } from "@/api/admin-risk";
|
||||||
export { getAdminCaptcha, getAdminMe, postAdminLogin } from "@/api/admin-auth";
|
export { getAdminCaptcha, getAdminMe, postAdminLogin } from "@/api/admin-auth";
|
||||||
|
|||||||
@@ -1,2 +1,5 @@
|
|||||||
/** Laravel `routes/api.php`:`api` 前缀 + `v1` 分组 */
|
/** Laravel `routes/api.php`:`api` 前缀 + `v1` 分组;与 {@link adminHttp} `baseURL` 一致。 */
|
||||||
export const API_V1_PREFIX = "/api/v1";
|
export const LOTTERY_API_V1_BASE = "/api/v1";
|
||||||
|
|
||||||
|
/** 后台路由在 `v1` 下的 `admin` 分组 */
|
||||||
|
export const ADMIN_API_BASE = "/admin";
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
import { hasLotteryAdminApiBaseUrl, publicAdminRequest } from "@/lib/admin-http";
|
import { hasLotteryAdminApiBaseUrl, publicAdminRequest } from "@/lib/admin-http";
|
||||||
import type { DrawCurrentSnapshot } from "@/types/api/public-draw";
|
import type { DrawCurrentSnapshot } from "@/types/api/public-draw";
|
||||||
|
|
||||||
import { API_V1_PREFIX } from "@/api/paths";
|
|
||||||
|
|
||||||
/** 大厅当前期(无需 Bearer) */
|
/** 大厅当前期(无需 Bearer) */
|
||||||
export async function getDrawCurrent(): Promise<DrawCurrentSnapshot | null> {
|
export async function getDrawCurrent(): Promise<DrawCurrentSnapshot | null> {
|
||||||
@@ -10,7 +9,7 @@ export async function getDrawCurrent(): Promise<DrawCurrentSnapshot | null> {
|
|||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
return await publicAdminRequest<DrawCurrentSnapshot | null>({
|
return await publicAdminRequest<DrawCurrentSnapshot | null>({
|
||||||
url: `${API_V1_PREFIX}/draw/current`,
|
url: `/draw/current`,
|
||||||
method: "GET",
|
method: "GET",
|
||||||
});
|
});
|
||||||
} catch {
|
} catch {
|
||||||
|
|||||||
@@ -8,11 +8,12 @@ import { withAdminAuthHeader } from "@/lib/admin-auth";
|
|||||||
import { withAdminLocaleHeaders } from "@/lib/admin-locale";
|
import { withAdminLocaleHeaders } from "@/lib/admin-locale";
|
||||||
import { LotteryApiBizError, LotteryApiEnvelopeError } from "@/types/api/errors";
|
import { LotteryApiBizError, LotteryApiEnvelopeError } from "@/types/api/errors";
|
||||||
import { isApiEnvelope } from "@/types/api/envelope";
|
import { isApiEnvelope } from "@/types/api/envelope";
|
||||||
|
import { LOTTERY_API_V1_BASE } from "@/api/paths";
|
||||||
|
|
||||||
export { hasLotteryAdminApiBaseUrl } from "@/lib/lottery-api-env";
|
export { hasLotteryAdminApiBaseUrl } from "@/lib/lottery-api-env";
|
||||||
|
|
||||||
export const adminHttp = axios.create({
|
export const adminHttp = axios.create({
|
||||||
// API 路径统一由调用方传 `/api/v1/...`,避免与前缀重复拼接成 `/api/api/v1/...`。
|
baseURL: LOTTERY_API_V1_BASE,
|
||||||
timeout: 30_000,
|
timeout: 30_000,
|
||||||
headers: { Accept: "application/json" },
|
headers: { Accept: "application/json" },
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user