This commit is contained in:
Max Peintner
2025-02-14 11:47:51 +01:00
parent 59f7f0b9d7
commit 7d249bfcdc
2 changed files with 19 additions and 8 deletions

View File

@@ -20,7 +20,7 @@ declare namespace NodeJS {
* The default is x-zitadel-instance-host.
* Most users don't need to set this variable.
*/
ZITADEL_INSTANCE_HOST_HEADER: string
ZITADEL_INSTANCE_HOST_HEADER: string;
/**
* Self hosting: The service user id

View File

@@ -42,15 +42,26 @@ export async function createServiceForHost<T extends ServiceClass>(
throw new Error("No token found");
}
const instanceHost = new URL(serviceUrl).host
const instanceHost = new URL(serviceUrl).host;
const transport = createServerTransport(token, {
baseUrl: process.env.ZITADEL_API_URL ?? serviceUrl,
interceptors: process.env.ZITADEL_API_URL && process.env.ZITADEL_API_URL != serviceUrl || process.env.ZITADEL_INSTANCE_HOST_HEADER ? [(next) => {
return (req) => {
req.header.set(process.env.ZITADEL_INSTANCE_HOST_HEADER ?? "x-zitadel-instance-host", instanceHost)
return next(req)
}
}] : undefined
interceptors:
(process.env.ZITADEL_API_URL &&
process.env.ZITADEL_API_URL != serviceUrl) ||
process.env.ZITADEL_INSTANCE_HOST_HEADER
? [
(next) => {
return (req) => {
req.header.set(
process.env.ZITADEL_INSTANCE_HOST_HEADER ??
"x-zitadel-instance-host",
instanceHost,
);
return next(req);
};
},
]
: undefined,
});
return createClientFor<T>(service)(transport);