This repository was archived by the owner on Jun 15, 2023. It is now read-only.
Managed query string parameters in the authorize endpoint.#28
Open
adrianolettieri wants to merge 1 commit intogardner:masterfrom
Open
Managed query string parameters in the authorize endpoint.#28adrianolettieri wants to merge 1 commit intogardner:masterfrom
adrianolettieri wants to merge 1 commit intogardner:masterfrom
Conversation
sidm1983
reviewed
Feb 11, 2022
| const url = `${logoutEndpoint || `${provider}/logout`}?${toUrlEncoded(query)}` | ||
| const logoutUrl = `${logoutEndpoint || `${provider}/logout`}`; | ||
| // Check if the url already contains at least one parameter | ||
| const separator = new RegExp('^.*\?.+=.+$').test(logoutUrl) ? '&' : '?'; |
There was a problem hiding this comment.
Hi, thank you for this code update. I actually just requested an enhancement for this without realising that this PR existed.
I think we should make a very small tweak to the regex here. Instead of '^.*\?.+=.+$', which will still use a '?' character for a query string parameter with no value, it should be changed to '^.*\?.+=.*$'. (Note the '*' instead of a '+' character before the '$' character.)
This will allow us to also add query string parameters with null/empty values (e.g. ?key=)
Suggested change
| const separator = new RegExp('^.*\?.+=.+$').test(logoutUrl) ? '&' : '?'; | |
| const separator = new RegExp('^.*\?.+=.*$').test(logoutUrl) ? '&' : '?'; |
sidm1983
reviewed
Feb 11, 2022
| const url = `${authorizeEndpoint || `${provider}/authorize`}?${toUrlEncoded(query)}` | ||
| const authorizeUrl = `${authorizeEndpoint || `${provider}/authorize`}`; | ||
| // Check if the url already contains at least one parameter | ||
| const separator = new RegExp('^.*\?.+=.+$').test(authorizeUrl) ? '&' : '?'; |
There was a problem hiding this comment.
Suggested change
| const separator = new RegExp('^.*\?.+=.+$').test(authorizeUrl) ? '&' : '?'; | |
| const separator = new RegExp('^.*\?.+=.*$').test(authorizeUrl) ? '&' : '?'; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
When configuring the authorizeEndpoint it may be necessary to set a url that contains a query string parameter. For example with AWS Cognito you can add idp_identifier to specify which idp should be used (without showing the list with alle the availble idps).