mirror of
https://github.com/zitadel/zitadel.git
synced 2025-08-11 15:49:35 +00:00
override relative url
This commit is contained in:
@@ -217,7 +217,7 @@ export async function GET(request: NextRequest) {
|
||||
params.set("organization", organization);
|
||||
}
|
||||
|
||||
const url = await startIdentityProviderFlow({
|
||||
let url: string | null = await startIdentityProviderFlow({
|
||||
serviceUrl,
|
||||
idpId,
|
||||
urls: {
|
||||
@@ -237,9 +237,12 @@ export async function GET(request: NextRequest) {
|
||||
);
|
||||
}
|
||||
|
||||
const absoluteUrl = constructUrl(request, url);
|
||||
if (url.startsWith("/")) {
|
||||
// if the url is a relative path, construct the absolute url
|
||||
url = constructUrl(request, url).toString();
|
||||
}
|
||||
|
||||
return NextResponse.redirect(absoluteUrl);
|
||||
return NextResponse.redirect(url);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -985,16 +985,18 @@ export async function startIdentityProviderFlow({
|
||||
return resp.nextStep.value;
|
||||
} else if (resp.nextStep.case === "formData" && resp.nextStep.value) {
|
||||
const formData: FormData = resp.nextStep.value;
|
||||
const redirectUrl = new URL("/saml-post");
|
||||
const redirectUrl = "/saml-post";
|
||||
|
||||
const params = new URLSearchParams({ url: formData.url });
|
||||
|
||||
redirectUrl.searchParams.set("url", formData.url);
|
||||
Object.entries(formData.fields).forEach(([k, v]) => {
|
||||
redirectUrl.searchParams.set(k, v);
|
||||
params.append(k, v);
|
||||
});
|
||||
|
||||
return redirectUrl.toString();
|
||||
return `${redirectUrl}?${params.toString()}`;
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
return null;
|
||||
});
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user