mirror of
https://github.com/imsyy/DailyHotApi.git
synced 2026-01-12 13:14:55 +08:00
✨ feat: 支持泛域名配置
This commit is contained in:
6
.env
6
.env
@@ -2,7 +2,11 @@
|
|||||||
PORT = 6688
|
PORT = 6688
|
||||||
|
|
||||||
# 允许的域名
|
# 允许的域名
|
||||||
ALLOWED_DOMAIN = "*"
|
ALLOWED_DOMAIN = "https://api-hot.imsyy.top"
|
||||||
|
|
||||||
|
# 允许的主域名,请填写为 imsyy.top
|
||||||
|
## 若填写该项,将忽略 ALLOWED_DOMAIN
|
||||||
|
ALLOWED_HOST = "imsyy.top"
|
||||||
|
|
||||||
# ROBOT
|
# ROBOT
|
||||||
DISALLOW_ROBOT = true
|
DISALLOW_ROBOT = true
|
||||||
|
|||||||
@@ -28,7 +28,11 @@ app.use(
|
|||||||
"*",
|
"*",
|
||||||
cors({
|
cors({
|
||||||
// 可写为数组
|
// 可写为数组
|
||||||
origin: config.ALLOWED_DOMAIN,
|
origin: (origin) => {
|
||||||
|
// 是否指定域名
|
||||||
|
const isSame = origin.endsWith(config.ALLOWED_HOST);
|
||||||
|
return isSame ? origin : config.ALLOWED_DOMAIN;
|
||||||
|
},
|
||||||
allowMethods: ["POST", "GET", "OPTIONS"],
|
allowMethods: ["POST", "GET", "OPTIONS"],
|
||||||
allowHeaders: ["X-Custom-Header", "Upgrade-Insecure-Requests"],
|
allowHeaders: ["X-Custom-Header", "Upgrade-Insecure-Requests"],
|
||||||
credentials: true,
|
credentials: true,
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ export type Config = {
|
|||||||
CACHE_TTL: number;
|
CACHE_TTL: number;
|
||||||
REQUEST_TIMEOUT: number;
|
REQUEST_TIMEOUT: number;
|
||||||
ALLOWED_DOMAIN: string;
|
ALLOWED_DOMAIN: string;
|
||||||
|
ALLOWED_HOST: string;
|
||||||
USE_LOG_FILE: boolean;
|
USE_LOG_FILE: boolean;
|
||||||
RSS_MODE: boolean;
|
RSS_MODE: boolean;
|
||||||
};
|
};
|
||||||
@@ -45,6 +46,7 @@ export const config: Config = {
|
|||||||
CACHE_TTL: getNumericEnvVariable("CACHE_TTL", 3600),
|
CACHE_TTL: getNumericEnvVariable("CACHE_TTL", 3600),
|
||||||
REQUEST_TIMEOUT: getNumericEnvVariable("CACHE_TTL", 6000),
|
REQUEST_TIMEOUT: getNumericEnvVariable("CACHE_TTL", 6000),
|
||||||
ALLOWED_DOMAIN: getEnvVariable("ALLOWED_DOMAIN") || "*",
|
ALLOWED_DOMAIN: getEnvVariable("ALLOWED_DOMAIN") || "*",
|
||||||
|
ALLOWED_HOST: getEnvVariable("ALLOWED_HOST") || "imsyy.top",
|
||||||
USE_LOG_FILE: getBooleanEnvVariable("USE_LOG_FILE", true),
|
USE_LOG_FILE: getBooleanEnvVariable("USE_LOG_FILE", true),
|
||||||
RSS_MODE: getBooleanEnvVariable("RSS_MODE", false),
|
RSS_MODE: getBooleanEnvVariable("RSS_MODE", false),
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user