【ITニュース解説】REST API and Common HTTP Methods
2025年09月21日に「Dev.to」が公開したITニュース「REST API and Common HTTP Methods」について初心者にもわかりやすく解説しています。
ITニュース概要
REST APIは、クライアントとサーバー間でデータ交換を行うAPIの一種だ。データ取得にはGET、新規作成にはPOST、全体更新にはPUT、部分更新にはPATCH、削除にはDELETEを使う。これらHTTPメソッドにより、効率的かつ標準化されたデータ連携が可能になる。
ITニュース解説
システムエンジニアを目指す上で、現代のITシステム開発に欠かせない技術の一つにREST APIがある。これは、Webサービス間で情報をやり取りするための、非常に標準化された仕組みだ。RESTは「Representational State Transfer」の略で、直訳すると「表現された状態の転送」となるが、これはクライアントとサーバーが、互いの状態を「表現」したデータ(たとえばユーザー情報や商品データなど)をやり取りすることで、Webサービスが連携していく考え方を示している。
REST APIはAPI(Application Programming Interface)の一種であり、クライアント(Webブラウザやスマートフォンアプリなど)がサーバーにHTTPリクエストを送信し、サーバーからHTTPレスポンスを受け取ることで通信を行う。このデータのやり取りは、多くの場合XMLやJSONといった軽量なデータ形式で行われる。これらの形式は、人間が読んでも理解しやすく、プログラムでも簡単に処理できるため、データの交換に適している。
クライアントがサーバーと通信し、サーバー側にあるデータを操作する際、REST APIは特定のHTTPメソッドを利用する。HTTPメソッドとは、クライアントがサーバーに対して「何をしたいのか」を伝えるための指示のようなものだ。REST APIでは、主に次の5つのHTTPメソッドが頻繁に用いられる。それは、GET、POST、PUT、PATCH、そしてDELETEである。これらのメソッドを使うことで、データの取得、作成、更新、削除といった基本的な操作が、統一された方法で実現される。
まず、GETメソッドは、サーバーからデータを「取得」するために使われる。例えば、特定のユーザーのプロフィール情報を表示したい場合や、商品のリストを取得したい場合などに利用する。GETリクエストが成功した場合、サーバーは通常「HTTP 200 (OK)」というステータスコードと共に、要求されたデータを含んだレスポンスを返す。もし要求されたデータ(リソース)が存在しなかった場合は、「404 (Not Found)」というエラーコードが返される。また、リクエストの形式が不正な場合などには「400 (Bad Request)」が返されることがある。例えば、「GET /user/123」というリクエストは、IDが123のユーザー情報を取得しようとしていることを意味する。
次に、POSTメソッドは、サーバーに新しいデータ(リソース)を「作成」するために用いられる。例えば、新しいユーザーを登録したり、商品レビューを投稿したりする際に使う。POSTリクエストが成功すると、サーバーは通常「HTTP 201 (Created)」というステータスコードを返し、新しいリソースが正常に作成されたことをクライアントに通知する。リクエストの本文(ボディ)には、作成したいリソースのデータ(例えば、新しいユーザーのIDや名前など)が含まれる。例として、「POST /user」というリクエストで、リクエストボディにユーザーのIDと名前のデータを含めて送信すれば、サーバーに新しいユーザーが作成されることになる。
PUTメソッドは、既存のデータ(リソース)を「更新」するために使用される。PUTの特徴は、リソース「全体」を置き換える点にある。もし指定したリソースがサーバー上に存在すれば、そのリソースはリクエストボディに送られてきたデータで完全に更新される。もし指定したリソースが存在しなかった場合は、新しくそのリソースを作成する、という挙動をとることもある。これは、POSTが常に新しいリソースの作成を意図するのに対し、PUTは「このURIにこの内容のリソースを置く」という意図を持つためである。例えば、「PUT /user/1234」というリクエストで、リクエストボディにIDが1234のユーザーの新しい名前を含めると、そのユーザー情報が更新される。
PATCHメソッドもデータの更新に用いられるが、PUTとは異なり、リソースの「部分的な更新」を行う点が特徴だ。PUTがリソース全体を置き換えるのに対し、PATCHは変更したいフィールドだけを送信する。これにより、送信するデータ量を減らし、効率的な更新が可能となる。例えば、ユーザーの複数の情報のうち、名前だけを変更したい場合に、名前のフィールドだけをリクエストボディに含めて送信する、といった使い方をする。「PATCH /user/1234」というリクエストで、リクエストボディに「name: Kumar」だけを含めると、IDが1234のユーザーの名前だけが「Kumar」に更新され、他の情報はそのまま保持される。
最後に、DELETEメソッドは、サーバーから特定のデータ(リソース)を「削除」するために使われる。例えば、ユーザーアカウントを削除したり、特定の商品をデータベースから消したりする場合に利用する。DELETEリクエストが成功した場合、サーバーは「HTTP 200 (OK)」または「204 (No Content)」というステータスコードを返すことが多い。「204 No Content」は、削除が成功し、クライアントに返すコンテンツが特にないことを示す。例えば、「DELETE /user/1234」というリクエストは、IDが1234のユーザーを削除しようとしていることを意味する。
このように、REST APIは、HTTPが元々持っているこれらのメソッドを適切に利用することで、クライアントとサーバー間の通信をシンプルかつ一貫性のある、そして標準化されたものにしている。これにより、異なるシステム間での連携が容易になり、現代の複雑なWebサービス開発において不可欠な技術基盤となっているのだ。