見出し画像

RustのreqwestでheaderにTokenを付与してAPIを叩きJsonを取得する

要件

  • RustのreqwestをheaderにTokenを付与してAPIを叩きJsonを取得

タスク

  • RustのreqwestをheaderにTokenを付与してAPIを叩きJsonを取得

参考記事

▼reqwestの基本とはまりどころを説明してくれてます!


▼jsonに変換する方法はこれです。Serdeに関してわかりやすく説明してあります!


学べること

  • reqwestの使い方

  • reqwestでheaderにTokenを付与してリクエストする方法

  • reqwestで取得した値をJsonに変換する方法

ヒント

#[derive(Debug, Deserialize, Serialize)]
struct Response {
    data: Vec<String>,
}    


// headerの作成
const TOKEN: &str = "sampleToken123456";
let bearer_token: &str = &format!("Bearer {}", TOKEN);

let mut headers = header::HeaderMap::new();
headers.insert("AUTHORIZATION", header::HeaderValue::from_str(bearer_token).unwrap());

// http clientの作成
let client = reqwest::Client::builder()
        .default_headers(headers)
        .build()?;

let url = "https://sample/api/v2/test";
let res = client
        .get(url)
        .send().await?
        .text().await
        .expect("データ取得の失敗");

 // jsonをデジリアライズ
 let res_json: Response = serde_json::from_str(&res).unwrap();


関連タグ

#Rust #Serde #reqwest #json

この記事が気に入ったらサポートをしてみませんか?