mirror of
https://github.com/ciiiii/cloudflare-docker-proxy.git
synced 2025-12-06 14:42:51 +08:00
improve use of worker variables
This commit is contained in:
19
src/index.js
19
src/index.js
@@ -14,26 +14,31 @@ function routeByHosts(host) {
|
||||
if (host in routes) {
|
||||
return routes[host];
|
||||
}
|
||||
return TARGET_UPSTREAM ? TARGET_UPSTREAM : "";
|
||||
if (MODE == "debug") {
|
||||
return TARGET_UPSTREAM;
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
async function handleRequest(request) {
|
||||
const url = new URL(request.url);
|
||||
if (url.pathname == "/v2/") {
|
||||
const resp = new Response({}, { status: 401 });
|
||||
resp.headers = new Headers();
|
||||
if (DEBUG) {
|
||||
resp.headers.set(
|
||||
const headers = new Headers();
|
||||
if (MODE == "debug") {
|
||||
headers.set(
|
||||
"Www-Authenticate",
|
||||
`Bearer realm="${LOCAL_ADDRESS}/v2/auth",service="cloudflare-docker-proxy"`
|
||||
);
|
||||
} else {
|
||||
resp.headers.set(
|
||||
headers.set(
|
||||
"Www-Authenticate",
|
||||
`Bearer realm="https://${url.hostname}/v2/auth",service="cloudflare-docker-proxy"`
|
||||
);
|
||||
}
|
||||
return resp;
|
||||
return new Response(JSON.stringify({ message: "UNAUTHORIZED" }), {
|
||||
status: 401,
|
||||
headers: headers,
|
||||
});
|
||||
}
|
||||
const upstream = routeByHosts(url.hostname);
|
||||
if (upstream === "") {
|
||||
|
||||
@@ -16,5 +16,12 @@ port = 8787
|
||||
local_protocol="http"
|
||||
upstream_protocol="https"
|
||||
|
||||
[env.dev]
|
||||
vars={DEBUG=true, LOCAL_ADDRESS="http://192.168.50.160:8787", TARGET_UPSTREAM="https://registry-1.docker.io"}
|
||||
[vars]
|
||||
MODE="production"
|
||||
LOCAL_ADDRESS=""
|
||||
TARGET_UPSTREAM=""
|
||||
|
||||
[env.dev.vars]
|
||||
MODE="debug"
|
||||
LOCAL_ADDRESS="http://192.168.50.160:8787"
|
||||
TARGET_UPSTREAM="https://registry-1.docker.io"
|
||||
Reference in New Issue
Block a user