はじめに
C#で使える無料のREST API用ライブラリ「RestSharp」を紹介します。
RestSharpの概要
2020年10月に公開された比較的新しいライブラリです。
「おそらく .NETでもっとも人気のある、REST API クライアントライブラリ」と本家サイトにも掲載されています。DL数・更新頻度も多く、NuGetのダウンロードランキングでも39位です。
データのシリアライズ/デシリアライズ機能、認証機能、GETやPOSTなど、ほぼ全てのHTTP呼び出しコマンドに対応しており、使い方もシンプルです。
ライセンス・人気度
ライセンス | Apache-2.0 |
.NETバージョン | 4.5.2 ~ |
NuGet ダウンロード数 | 768.1M |
GitHub Star数 | 7.8k |
※ DL数などは記事作成時点の数値です。
RestSharpの使った簡単なサンプル
RestSharpを使ってデータを取得するコードは以下の通りです。
政府統計の総合窓口「e-Stat」(RestAPI対応) から「人口推計」のデータを取得しています。
基本的な処理の流れは以下の3点で、メインの処理は10行程度で書くことが出来ます。
- ① アクセスするURL(URI)の指定
- ② リクエストのHTTPコマンド / パラメータの指定
- ③ REST APIへのリクエストの発行
下記コードを正常実行するためには、e-Statに会員登録(無料)して発行する「appID」が必要です。appIDを発行後、36行目の内容を自身のappIDに置き換えてください。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
// RestClientなど、RestSharpのクラスに使用します
using RestSharp;
using RestSharp.Authenticators;
namespace ConsoleAppRestApi
{
class Program
{
static void Main(string[] args)
{
// RestAPI用のクライアントを生成します
var client = new RestClient();
// RestAPI用のリクエストを生成します
var request = new RestRequest();
// RestAPIから情報取得のためにアクセスする、e-StatのURLです(XML用)
client.BaseUrl = new Uri("http://api.e-stat.go.jp/rest/3.0/app/getStatsData");
// RestAPIから情報取得のためにアクセスする、e-StatのURLです(json用)
//client.BaseUrl = new Uri("http://api.e-stat.go.jp/rest/3.0/app/json/getStatsData");
// HTTPのコマンドを指定します、情報の取得なので GET を指定します
request.Method = Method.GET;
// e-Statで取得した appID をパラメータとして追加します
request.AddParameter("appId", "*** 取得したappidを記載する ***", ParameterType.GetOrPost);
// e-Statの統計表表示 ID (取得した統計表の番号) をパラメータとして追加します
request.AddParameter("statsDataId", "0003412317", ParameterType.GetOrPost);
// リクエストを送信します
var response = client.Execute(request);
// リクエストにより取得したデータの中身をファイルに書き込みます
File.WriteAllText(@"C:\test.xml", response.Content );
// 終了待ちです
Console.WriteLine(">> RestAPIによるデータの取得が完了しました。");
Console.ReadKey();
}
}
}
実行結果
上記コードの実行すると、以下の統計データがXMLとして保存されます。
e-Statの利用方法について
e-Statを使用するためには、無料の会員登録が必要です。
メールアドレスだけで登録可能なので、興味がある方は以下から会員登録をしてappIDを取得してください。
appIDの取得方法等については、e-Statのサイトをご覧ください。
Twitterからの情報取得
RestSharpの本家サイトでは、Twitterから情報を取得する方法が掲載されています。
Twitterから情報を取得したい!というかたは、以下の公式のサンプルをご覧ください。
まとめ
C#で使える無料のREST API用ライブラリ「Rest Sharp」
を紹介しました。
参考になればうれしいです。
RestSharpの詳しい使い方や、政府の統計総合窓口「e-Stat」の使用方法や使用するコツを、以下の記事で詳しく解説しています。興味のある方は合わせてご覧ください。
Lenovo Web広告限定ストア
Macに負けないデザインのWindowsPCなら、「ThinkPad」がおすすめ。私も仕事とプライベートで10年以上使っています。以下のリンクで、割引情報やクーポン情報を入手できるので、ぜひ覗いてみてください。
質問・要望 大歓迎です
「こんな解説記事作って」「こんなことがしたいけど、〇〇で困ってる」など、コメント欄で教えてください。 質問・要望に、中の人ができる限り対応します。
使えたよ・設定できたよの一言コメントも大歓迎。気軽に足跡を残してみてください。記事を紹介したい方はブログ、SNSにバシバシ貼ってもらってOKです。