そもそもAPIとは?
API(Application Programming Interface)は、別のプログラム同士が会話するための「窓口」です。たとえば天気アプリは、自分で気象観測をしているわけではなく、気象庁のAPIに「東京の今日の天気を教えて」と問い合わせて、その答えを画面に表示しています。お店のレジが他の商品の在庫を聞きに本部に問い合わせる、と似たイメージです。
APIの基本フロー
JSONとは?
JSON(ジェイソン、JavaScript Object Notation)は、データを「キー:値」のペアで書き表す形式です。読みやすく、ほとんどのプログラミング言語が標準で扱えるため、APIのやり取りで一番使われています。たとえば次のような形になります。
{ "city": "Tokyo", "weather": "晴れ", "temp": 22, "humidity": 60 }
「キー(cityなど)」と「値(Tokyoなど)」のペアで構成され、配列やネスト(入れ子)も表現できます。XMLという古い形式より軽くて読みやすいので、現在主流です。
何に使われている?
中高生におすすめの使い方
JavaScriptの「fetch」関数を使うと、ブラウザだけでAPIを呼び出せます。たとえば「fetch('https://api.example.com/weather').then(r => r.json()).then(d => console.log(d))」で、JSONデータが取得できます。無料で使える「JSONPlaceholder」「PokeAPI(ポケモン情報)」「気象庁API」あたりが、最初の練習に最適です。
慣れてきたら、自分のサイトに「天気を表示するブロック」「ポケモン図鑑」「為替レート表示」を組み込んでみましょう。動的なサイトの楽しさが一気にわかります。
練習では、まずブラウザの開発者ツールでNetworkタブを開き、APIのURL、返ってきたステータスコード、JSONの中身を観察します。200なら成功、404なら場所が見つからない、429なら短時間に呼びすぎ、500番台ならサーバー側の問題、というように数字だけでもかなり原因を絞れます。
APIキーが必要なサービスでは、キーをHTMLやJavaScriptに直接書かないことが大切です。公開ページに書くと誰でも見られてしまい、勝手に使われる危険があります。最初はキー不要の練習用APIで構造を理解し、本格的なサービスは公式ドキュメントと利用規約を読んでから使いましょう。
気をつけたい落とし穴
- APIキー(パスワード相当)をHTML/JavaScriptに直書きすると、誰でも見られて悪用される。サーバー側に隠す
- 無料APIは「1分間に何回まで」など制限がある。短時間に呼びすぎてブロックされることがある
- CORS(クロスオリジン制約)でブラウザが弾く。動かない時はF12のNetworkタブを確認
将来どう役立つ?
API・JSONを扱える人は、Web開発・モバイル開発・データ分析・AI活用と幅広い職種で重宝されます。最近はノーコードツール(Zapier・Makeなど)も裏でAPI連携を使っており、API理解は「人と機械の橋渡し」スキルとして引き続き需要があります。
仕事では「画面は動いているのにデータが表示されない」という相談がよく起こります。そのとき、画面の問題なのか、APIの返事が遅いのか、JSONの形が変わったのかを分けて見られる人は強いです。APIとJSONは、Webアプリを作る人だけでなく、AIツールや業務自動化を使う人にも必要な読み書きの基礎になります。
今日からできること
- ブラウザのアドレスバーに「https://jsonplaceholder.typicode.com/users」と入力してJSONを見る
- F12のConsoleで「fetch('https://jsonplaceholder.typicode.com/users').then(r=>r.json()).then(console.log)」を実行
- HTMLの中に、APIの結果を表示する小さなページを作ってみる