haackmanWebAPIWebAPIって何?「webAPI」という名前に聞き覚えがある人もいるかもしれません。WebAPIというのは、一言で言うと機能の窓口的な役割を果たすものです。ウェブやスマートフォンアプリを作ったとして、ただ作っただけではそれは閉じたプログラムの中で完結するものでしかありません。WebAPIを使うことで、最新のニュースや天気を取得したり、データベースからデータを参照したりすることが可能となります。閉じたプログラムから、外界に開けたプログラミングが可能になるのです。リクエストとレスポンス先ほど述べたように、WebAPIは主に何か外のデータを取得するときに使います。同様に外のデータベースに情報を登録することもできます。この時、一連の流れを示すと、ブラウザからHTTPリクエストを出す→WebAPIを経由→サーバーorDBで何らかの処理(データの検索など)を行う→WebAPIを経由→HTTPレスポンスが返ってくるというふうになります。見てわかるように、WebAPIは端末とサーバーorDBをつなぐ窓口的な役割をしています。この時のリクエストとレスポンスの型には一定のルールがあり、それを少し見ていきましょう。HTTPリクエストリクエストパス:例:/user/nameHTTPメソッド:データの取得→GET,データの追加→POSTリクエストヘッダ:Content-Type:application/jsonクエリストリング:例:sex=man&height=170リクエストボディ:(なし)上に示したのがHTTPリクエストに含まれる情報です。リクエストにはこの情報を付加する必要があり、リクエストパスやクエリストリングは適宜取得したいデータなどによって変更します。“honda”},.....]}上に示したのがHTTPレスポンスに含まれる情報です。リクエストを出して帰ってきた情報には、正しく処理が完了したかどうかのおステータスコードがあり、うまくいっていれば一般的に200が返ってきます。逆にサーバーでエラーが生じたりした時は500が返ってきたりします。ボディには取得した情報などが格納される場合が多いです。リクエストパスとクエリストリングはてなブックマークを取得するAPIhttp://api.b.st-hatena.com/entry.count?url={目的のURL}上記にはてなブックマーク数を取得できるAPIを例に示します。公開されているAPIなので誰でも簡単に利用可能ですが、中には登録などが必要なものもあるので注意しましょう。この中でリクエストパスとクエリストリングがどこかわかるでしょうか。リクエストパスは/entry.countクエリストリングはurl={目的のURL}の部分です。パスとクエリストリングは半角の?で繋がれます。試しにyahooのホームページを目的のURLに入れてブラウザで表示してみてください。http://api.b.st-hatena.com/entry.count?url=https://www.yahoo.co.jpするとブラウザに数字が表示されると思います。これが今回のレスポンスということになります。レスポンスのボディはjson形式のものが多いですが、今回は1つだけしか値が返ってこないので数字だけが表示されるはずです。なんとなくAPIの使い方がつかめたのではないでしょうか。この場合はデータを取得しているのでメソッドはGETです。POSTメソッドと使いたい時はURLに情報が表示されてはまずいですよね。POSTの場合はクエリストリングは表示されないように設計されています。まとめなんとなくAPIについてわかったのではないでしょうか?APIを使って返ってきたHTTPレスポンスのボディをうまくアプリに組み込むことで、外界に開けたアプリケーションを誰でもつくることが可能というわけです。プログラムの組み方はいくつか方法がありますので、別の記事で紹介したいと思います。コメントをキャンセルメールアドレスが公開されることはありません。Themeisle.。