perf: 优化反向代理配置

This commit is contained in:
ElyPrism 2025-07-27 14:25:13 +08:00 committed by ImFurina
parent 771777b669
commit b598978628
6 changed files with 14 additions and 7 deletions

4
.env
View File

@ -3,7 +3,9 @@
# CORS_ALLOW_ORIGIN = "*" # CORS_ALLOW_ORIGIN = "*"
### 代理设置 ### 代理设置
## 如果你需要配置, 请取消下面的注释并设置具体的代理地址 ## 启用反向代理
ENABLE_PROXY = false
## 代理配置
PROXY_URL = "https://your-proxy-url.com/?proxy=" PROXY_URL = "https://your-proxy-url.com/?proxy="

View File

@ -13,7 +13,8 @@ module.exports = async (query, request) => {
const result = await match(query.id, !server? source : server) const result = await match(query.id, !server? source : server)
const proxy = process.env.PROXY_URL; const proxy = process.env.PROXY_URL;
console.log("[OK] 开始解灰", query.id, result) console.log("[OK] 开始解灰", query.id, result)
if (result.url.includes('kuwo')) { result.proxyUrl = proxy + result.url } const useProxy = process.env.ENABLE_PROXY || "false"
if (result.url.includes('kuwo')) { result.proxyUrl = useProxy === 'true' ? proxy + result.url : result.url }
return { return {
status: 200, status: 200,
body: { body: {

View File

@ -41,8 +41,9 @@ module.exports = async (query, request) => {
const result = await response.json(); const result = await response.json();
// 代理逻辑 // 代理逻辑
const useProxy = process.env.ENABLE_PROXY || false;
const proxy = process.env.PROXY_URL; const proxy = process.env.PROXY_URL;
if (proxy && result.url && result.url.includes("kuwo")) { if (useProxy && result.url && result.url.includes("kuwo")) {
result.proxyUrl = proxy + result.url.replace(/^http:\/\//, "http/"); result.proxyUrl = proxy + result.url.replace(/^http:\/\//, "http/");
} }

View File

@ -13,7 +13,8 @@ module.exports = async (query, request) => {
const result = await match(query.id, !server? source : server) const result = await match(query.id, !server? source : server)
const proxy = process.env.PROXY_URL; const proxy = process.env.PROXY_URL;
console.log("[OK] 开始解灰", query.id, result) console.log("[OK] 开始解灰", query.id, result)
if (result.url.includes('kuwo')) { result.proxyUrl = proxy + result.url } const useProxy = process.env.ENABLE_PROXY || "false"
if (result.url.includes('kuwo') && useProxy === "true") { result.proxyUrl = proxy + result.url }
return { return {
status: 200, status: 200,
body: { body: {

View File

@ -18,7 +18,8 @@ module.exports = async (query, request) => {
const result = await match(query.id, source) const result = await match(query.id, source)
console.log('[OK] 开始解灰', query.id, result) console.log('[OK] 开始解灰', query.id, result)
if (result.url.includes('kuwo')) { if (result.url.includes('kuwo')) {
var proxyUrl = process.env.PROXY_URL + result.url const useProxy = process.env.ENABLE_PROXY || 'false'
var proxyUrl = useProxy === 'true' ? process.env.PROXY_URL + result.url : result.url
} }
let url = Array.isArray(result) ? (result[0]?.url || result[0]) : (result.url || result) let url = Array.isArray(result) ? (result[0]?.url || result[0]) : (result.url || result)
if (url) { if (url) {
@ -32,7 +33,7 @@ module.exports = async (query, request) => {
url, url,
type: 'flac', type: 'flac',
level: query.level, level: query.level,
freeTrialInfo: 'unblock', freeTrialInfo: 'null',
fee: 0, fee: 0,
proxyUrl: proxyUrl || '', proxyUrl: proxyUrl || '',
}, },

View File

@ -262,7 +262,8 @@ async function consturctServer(moduleDefs) {
} }
if (song.url.includes('kuwo')) { if (song.url.includes('kuwo')) {
const proxy = process.env.PROXY_URL; const proxy = process.env.PROXY_URL;
if (proxy) {song.proxyUrl = proxy + song.url} const useProxy = process.env.ENABLE_PROXY || 'false'
if (useProxy === 'true' && proxy) {song.proxyUrl = proxy + song.url}
} }
} }