ページを開く、商品一覧を取ってくる、フォームの内容を送る。そのとき最初にブラウザやアプリがサーバーへ出している「お願い」が、リクエストです。HTTP のやり取りは、必ずこのお願いから始まり、それに対してレスポンスが返ってきます。
お店のカウンターで注文票を差し出す場面に近いものがあります。何がほしいかを書き、サイズや数量のような条件も添える。店員さんはその注文票を読んで、何を返すかを決めます。
注文票に書かれているもの
Webのリクエストに入っているのは、おおむね次のような情報です。
- どこに頼むか(URL)
- 何をしてほしいか(見せてほしい、保存してほしい、などの送信方法)
- 追加の条件や送るデータ(検索条件、フォームの入力内容、アップロードするファイル)
- 誰からのお願いか(ログイン状態や認証情報を載せたヘッダー)
API を使うときも同じです。APIが「どんな注文を受け付けるか」という窓口の取り決めで、リクエストはその窓口へ実際に出す1回ごとの注文票にあたります。
断られたらまず自分の注文票を見直す
リクエストを送ったからといって、その通りに処理されるとは限りません。送り先が見つからない、権限が足りない、入力内容が間違っている。そうした理由で、サーバーに断られることもあります。
うまくいかないときは、サーバーを疑う前に、送った内容を確認するほうが早く片づくことが多いです。URLや送信方法は仕様どおりか。必要な認証情報やヘッダーを入れ忘れていないか。返ってきたレスポンスのステータスコードが、どちらの側の問題かを教えてくれます。
毎回大きすぎるデータを送る作りになっていないかも、連携を頼むときに確認しておきたい点です。