INNER CODE UNIT · Rust

get_role

rkudryashov/graphql-rust-demo · common-utils/src/lib.rs:26

pub fn get_role(http_request: HttpRequest) -> Result<Option<Role>, CustomError> {
    let role_header_value = http_request.headers().get("role");

    match role_header_value {
        Some(header_value) => {
            let header_str = header_value.to_str()?;
            Ok(Some(Role::from_str(header_str)?))
        }
        None => Ok(None),
    }
}

pub fn check_user_role_is_allowed(
    getting_role_result: &Result<Option<Role>, CustomError>,
    allowed_role: &Role,
) -> Result<(), CustomError> {
    let maybe_role = match getting_role_result {
        Ok(maybe_role) => maybe_role,

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…