search
naoki's icon'
  • naoki
  • 2019/03/13 16:45
Content image

今回はrustでJSON形式の情報を取得する方法を試してみました。


まずは使用するデータからです。

ALIS APIの"/users/{user_id}/info"を使用してユーザー情報を取得しておきます。

例として私のユーザー情報を取得するURLです。

https://alis.to/api/users/neokey/info

※"neokey"の部分を任意のユーザーにかえるとそのユーザーの情報が取得できます。

こちらのリンクをブラウザで開くと下記のJSON形式の情報が表示されます。

{"user_display_name": "naoki", "user_id": "neokey", "self_introduction": "\u307b\u307c\u8a18\u4e8b\u95b2\u89a7\u3057\u304b\u3057\u3066\u3044\u307e\u305b\u3093\u304c\u3001\u8a18\u4e8b\u3092\u66f8\u3051\u308b\u3088\u3046\u306b\u304c\u3093\u3070\u308a\u307e\u3059\u3002", "icon_image_url": "https://alis.to/d/api/info_icon/neokey/icon/04988a86-65fc-43d7-8861-d1d14d926d69.png"}


次に実際に動かすソースコードです。

rustのソースコードにJSON形式の文字列を適用したものがこちらになります。

r#" から "#の中にあるのがJSON形式の文字列です。

---------------------------------------------------------------------------------

extern crate serde;

extern crate serde_json;

use std::collections::BTreeMap;

fn main() {

   let s = r#"

   {

      "user_display_name": "naoki",

       "user_id": "neokey",

       "self_introduction": "\u307b\u307c\u8a18\u4e8b\u95b2\u89a7\u3057\u304b\u3057\u3066\u3044\u307e\u305b\u3093\u304c\u3001\u8a18\u4e8b\u3092\u66f8\u3051\u308b\u3088\u3046\u306b\u304c\u3093\u3070\u308a\u307e\u3059\u3002",

       "icon_image_url": "https://alis.to/d/api/info_icon/neokey/icon/04988a86-65fc-43d7-8861-d1d14d926d69.png"

     }

     "#;

     let deserialized_map: BTreeMap<String, String> = serde_json::from_str(s).unwrap();

     println!("{:?}", deserialized_map);

     println!("{:?}", deserialized_map.get("user_display_name").unwrap());

     }

---------------------------------------------------------------------------------

こちらのソースコードを実行すると下記の2つの情報("{}"で囲まれた文字列と"naoki"の文字列)が出力されます。

{"icon_image_url": "https://alis.to/d/api/info_icon/neokey/icon/04988a86-65fc-43d7-8861-d1d14d926d69.png", "self_introduction": "ほぼ記事閲覧しかしていませんが、記事を書けるようにがんばります。", "user_display_name": "naoki", "user_id": "neokey"}

"naoki"


実際に試してみたい方は下記の記事の「Getting started」ページの「Try Rust without installing」ボタンを押して、体験ページに行ってみてください。

体験ページでこちらのソースコードを貼って「RUN」ボタンを押してみてください。


参考ページ: RustのJSONシリアライザをいろいろと試してみる(+α)

公開日:2019/03/13
獲得ALIS:23.62
Article registration Article registration
naoki's icon'
  • naoki
  • @neokey
最近、少しずつですが記事を書くようにしています。記事閲覧のほうが断然多いですが・・・。

投稿者の人気記事
コメントする
コメントする
こちらもおすすめ!
Eye catch
クリプト

NFT解体新書・デジタルデータをNFTで販売するときのすべて【実証実験・共有レポート】

otakucoin 2021/03/29
Like token Tip token
121.79 ALIS
Eye catch
テクノロジー

なぜ、素人エンジニアの私が60日間でブロックチェーンゲームを制作できたのか、について語ってみた

ゆうき 2020/08/12
Like token Tip token
270.93 ALIS
Eye catch
クリプト

ジョークコインとして出発したDogecoin(ドージコイン)の誕生から現在まで。注目される非証券性🐶

昆布森ちゃん 2021/01/19
Like token Tip token
38.31 ALIS
Eye catch
クリプト

Uniswap v3を完全に理解した

池田らいく 2021/04/04
Like token Tip token
18.92 ALIS
Eye catch
クリプト

Bitcoinの価値の源泉は、PoWによる電気代ではなくて"競争原理"だった。

CryptoChick 2020/03/07
Like token Tip token
159.32 ALIS
Eye catch
テクノロジー

オープンソースプロジェクトに参加して自己肯定感を高める

おはぐろ氏 2020/02/15
Like token Tip token
85.05 ALIS
Eye catch
他カテゴリ

機械学習を体験してみよう!(難易度低)

nonstop-iida 2020/03/04
Like token Tip token
124.82 ALIS
Eye catch
テクノロジー

iOS15 配信開始!!

IMAKARA 2021/09/23
Like token Tip token
7.20 ALIS
Eye catch
ゲーム

ドラクエで学ぶオーバフロー

keiju togashi 2020/03/12
Like token Tip token
30.10 ALIS
Eye catch
クリプト

17万円のPCでTwitterやってるのはもったいないのでETHマイニングを始めた話

nnppnpp(んぺー) 2021/09/08
Like token Tip token
46.60 ALIS
Eye catch
クリプト

Bitcoin史 〜0.00076ドルから6万ドルへの歩み〜

大田コウキ 2021/04/06
Like token Tip token
947.13 ALIS
Eye catch
テクノロジー

彼女でも分かるように解説:ディープフェイク

Jimmy 2020/03/17
Like token Tip token
32.10 ALIS