api: disable youtube HLS by default & add env to enable it
This commit is contained in:
@@ -156,6 +156,7 @@ export const runAPI = async (express, app, __dirname, isPrimary = true) => {
|
||||
return fail(res, `error.api.auth.key.${error}`);
|
||||
}
|
||||
|
||||
req.isApiKey = true;
|
||||
return next();
|
||||
});
|
||||
|
||||
@@ -264,6 +265,7 @@ export const runAPI = async (express, app, __dirname, isPrimary = true) => {
|
||||
patternMatch: parsed.patternMatch,
|
||||
params: normalizedRequest,
|
||||
isSession: req.isSession ?? false,
|
||||
isApiKey: req.isApiKey ?? false,
|
||||
});
|
||||
|
||||
res.status(result.status).json(result.body);
|
||||
|
||||
@@ -8,6 +8,7 @@ import * as cluster from "../misc/cluster.js";
|
||||
import { Green, Yellow } from "../misc/console-text.js";
|
||||
|
||||
const forceLocalProcessingOptions = ["never", "session", "always"];
|
||||
const youtubeHlsOptions = ["never", "key", "always"];
|
||||
|
||||
export const loadEnvs = (env = process.env) => {
|
||||
const disabledServices = env.DISABLED_SERVICES?.split(',') || [];
|
||||
@@ -74,6 +75,9 @@ export const loadEnvs = (env = process.env) => {
|
||||
// "never" | "session" | "always"
|
||||
forceLocalProcessing: env.FORCE_LOCAL_PROCESSING ?? "never",
|
||||
|
||||
// "never" | "key" | "always"
|
||||
enableDeprecatedYoutubeHls: env.ENABLE_DEPRECATED_YOUTUBE_HLS ?? "never",
|
||||
|
||||
envFile: env.API_ENV_FILE,
|
||||
envRemoteReloadInterval: 300,
|
||||
};
|
||||
@@ -106,6 +110,12 @@ export const validateEnvs = async (env) => {
|
||||
throw new Error("Invalid FORCE_LOCAL_PROCESSING");
|
||||
}
|
||||
|
||||
if (env.enableDeprecatedYoutubeHls && !youtubeHlsOptions.includes(env.enableDeprecatedYoutubeHls)) {
|
||||
console.error("ENABLE_DEPRECATED_YOUTUBE_HLS is invalid.");
|
||||
console.error(`Supported options are are: ${youtubeHlsOptions.join(', ')}\n`);
|
||||
throw new Error("Invalid ENABLE_DEPRECATED_YOUTUBE_HLS");
|
||||
}
|
||||
|
||||
if (env.externalProxy && env.freebindCIDR) {
|
||||
throw new Error('freebind is not available when external proxy is enabled')
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user