今回は,Steam APIを使ってみる。
SteamとはPCゲームプラットホーム。簡単に言うと、M○bageとかgr○○のような感じのサービスと、AndroidのPlay storeを足したようなもの。
Steam APIを使うと、そのプラットホーム上の情報を取得することができる。
APIを使用するためにはAPI Keyを取得しなければならない。
ここからログインし、ログインすると下のような登録画面に遷移する。
APIを使用するドメインを入力し、規約に同意できればチェックボックスにチェクを付け登録ボタンを押すと発行される。
発行されたキーは大事に保存しておく。
次に、APIへのアクセスして情報をとってみる。
Web APIなので、C/C++やC#,Ruby,perlなど、httpアクセスできれば言語は何でも使えます。
今回は、PHPを使います。
<?php $key = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'; $formatType = 'json'; $interface = 'ISteamWebAPIUtil'; $method = 'GetSupportedAPIList'; $url = "http://api.steampowered.com/{$interface}/${method}/v1/?key={$key}&format={$formatType}&language=ja"; $data = file_get_contents($url); $obj = json_decode($data, true); display($obj, 0); function display($data, $level) { foreach($data as $key => $value) { if(is_array($value)) { display($value, $level + 1); } else { displaySpace($level); echo("'{$key}' => '{$value}'<br>\n"); } } } function displaySpace($num) { for($i = 0;$i < $num;$i++) { echo(" "); } }
このサンプルプログラムでは、今Web APIで公開されているAPIの一覧を取ってきて、表示します。
ポイとは7行目のurlです。
ドメイン名を指定したあとは、スラッシュ区切りでインターフェース名、メソッド名、バージョン、メソッドの引数と続きます。
バージョンはAPIのバージョンです。ドキュメントや、このサンプルプログラムプログラムで表示されているバージョンを書きます。
メソッドの引数はGETのパラメータとして指定し、共通でkey、format、languageを指定できます。
keyはこの記事冒頭で取得したAPI Keyを指定します。
formatは取得するデータの形式を指定し、デフォルトではjsonになります。jsonの他にはxml、vdfが指定できます。
languageは取得したい言語。指定した言語がない場合は英語になります。指定はISO639-1で指定します
このルールで作っったURLに、アクセスすると情報が返ってくるのであとは自分の必要に応じてデータを使ってやればいい。