Fix example API client

This commit is contained in:
2025-11-11 21:24:19 +01:00
parent 8fdf1d57eb
commit 7c78eb541e

View File

@@ -2,11 +2,13 @@ use clap::Parser;
use jwt_simple::algorithms::HS256Key;
use jwt_simple::prelude::{Clock, Duration, JWTClaims, MACLike};
use matrixgw_backend::constants;
use matrixgw_backend::extractors::auth_extractor::TokenClaims;
use matrixgw_backend::extractors::auth_extractor::{MatrixJWTKID, TokenClaims};
use matrixgw_backend::users::{APITokenID, UserEmail};
use matrixgw_backend::utils::rand_utils::rand_string;
use std::ops::Add;
use std::os::unix::prelude::CommandExt;
use std::process::Command;
use std::str::FromStr;
/// cURL wrapper to query MatrixGW
#[derive(Parser, Debug)]
@@ -20,9 +22,9 @@ struct Args {
#[arg(short('i'), long, env)]
token_id: String,
/// User ID
/// User email
#[arg(short('u'), long, env)]
user_id: String,
user_mail: String,
/// Token secret
#[arg(short('t'), long, env)]
@@ -69,11 +71,14 @@ fn main() {
};
let jwt = key
.with_key_id(&format!(
"{}#{}",
urlencoding::encode(&args.user_id),
urlencoding::encode(&args.token_id)
))
.with_key_id(
&MatrixJWTKID {
user_email: UserEmail(args.user_mail),
id: APITokenID::from_str(args.token_id.as_str())
.expect("Failed to decode token ID!"),
}
.to_string(),
)
.authenticate(claims)
.expect("Failed to sign JWT!");