ezidam: oauth: auth request: optional response mode, default is query

This commit is contained in:
Philippe Loctaux 2023-04-03 17:57:49 +02:00
parent ba9ecb9f5c
commit 3ce6154dfa
2 changed files with 3 additions and 3 deletions

View file

@ -11,7 +11,7 @@ pub enum ResponseMode {
#[derive(Debug, FromForm, UriDisplayQuery)]
pub struct AuthenticationRequest<'r> {
pub response_type: &'r str,
pub response_mode: ResponseMode,
pub response_mode: Option<ResponseMode>,
pub scope: &'r str,
pub client_id: &'r str,
pub redirect_uri: &'r str,

View file

@ -54,7 +54,7 @@ pub async fn authorize_ezidam(mut db: Connection<Database>) -> Result<Redirect>
let request = AuthenticationRequest {
response_type: openid::CoreResponseType::Code.as_ref(),
response_mode: ResponseMode::Query,
response_mode: Some(ResponseMode::Query),
scope: &openid::SupportedScopes::url_format(),
client_id: app.id().as_ref(),
redirect_uri: app.redirect_uri(),
@ -165,7 +165,7 @@ pub async fn authorize_form(
// Construct uri to redirect to
let uri = {
let uri_mode = match auth_request.response_mode {
let uri_mode = match auth_request.response_mode.unwrap_or(ResponseMode::Query) {
ResponseMode::Query => "?",
ResponseMode::Fragment => "#",
};