mirror of
https://github.com/hanzoai/openid-client.git
synced 2026-09-24 17:01:10 +00:00
3.1 KiB
3.1 KiB
Function: buildAuthorizationUrlWithPAR()
Support from the community to continue maintaining and improving this module is welcome. If you find the module useful, please consider supporting the project by becoming a sponsor.
â–¸ buildAuthorizationUrlWithPAR(config, parameters, options?): Promise<URL>
Returns a URL to redirect the user-agent to, in order to request authorization at the Authorization Server with a prior step of using PAR
Note
URL of the authorization server's authorization endpoint must be configured.
Note
URL of the authorization server's pushed authorization request endpoint must be configured.
Parameters
| Parameter | Type | Description |
|---|---|---|
config |
Configuration |
- |
parameters |
Record<string, string> | URLSearchParams |
Authorization request parameters that will be sent to PAR |
options? |
DPoPOptions |
- |
Returns
URL Instance with URL.searchParams including
client_id and request_uri.
Examples
Using PAR
let config!: client.Configuration
let redirect_uri!: string
let scope!: string
// these must be unique for every single authorization request
let code_verifier = client.randomPKCECodeVerifier()
let code_challenge =
await client.calculatePKCECodeChallenge(code_verifier)
let redirectTo = await client.buildAuthorizationUrlWithPAR(config, {
redirect_uri,
scope,
code_challenge,
code_challenge_method: 'S256',
})
// redirect now
let config!: client.Configuration
let redirect_uri!: string
let scope!: string
let key!: client.CryptoKey
// these must be unique for every single authorization request
let code_verifier = client.randomPKCECodeVerifier()
let code_challenge =
await client.calculatePKCECodeChallenge(code_verifier)
let { searchParams: params } = await client.buildAuthorizationUrlWithJAR(
config,
{
redirect_uri,
scope,
code_challenge,
code_challenge_method: 'S256',
},
key,
)
let redirectTo = await client.buildAuthorizationUrlWithPAR(
config,
params,
)
// redirect now