本サイトは広告により収益を得ています

シンプルなAPIエンドポイントの作成(CRUD操作)

シンプルなAPIエンドポイントの作成(CRUD操作)

2025年10月09日
フリー検定
広告

目次

現在: 9 / 10

バックエンドエンジニアに関する検定はこちら

面倒な会員登録も不要!すぐに受験!

無料で受験する

バックエンドの主な役割は、クライアントアプリケーションが利用するための API(Application Programming Interface) を提供することです。特に、データベースの基本的な操作(データの作成、読み取り、更新、削除)を行うAPIは CRUD操作 と呼ばれ、全てのWebサービスの基本となります。


1. APIとエンドポイントの基本

  • API (Application Programming Interface) / 説明: ソフトウェアやプログラム間でデータをやり取りするための窓口や規約のことです。バックエンドAPIは、サーバーが提供する機能の窓口です。

  • エンドポイント(Endpoint) / 説明: クライアントがアクセスする特定のURLのことです。通常、リソース名(例: /users/products)を含みます。

  • RESTful API / 説明: HTTPメソッドとURLを使ってリソースを操作する原則に従ったAPI設計スタイルです。CRUD操作をHTTPメソッドにマッピングすることで、直感的で統一されたインターフェースを提供します。


2. CRUD操作とHTTPメソッドのマッピング

CRUD操作(Create, Read, Update, Delete)は、RESTful APIの主要なHTTPメソッドと対応します。

  • 作成 (Create) / HTTPメソッド: POST / 目的: 新しいリソースをサーバーに送信し、作成する。 / エンドポイント例: /items

  • 読み取り (Read) / HTTPメソッド: GET / 目的: リソースを取得・参照する。 / エンドポイント例: /items (一覧), /items/1 (個別)

  • 更新 (Update) / HTTPメソッド: PUT / PATCH / 目的: 既存のリソースを修正・更新する。 / エンドポイント例: /items/1

  • 削除 (Delete) / HTTPメソッド: DELETE / 目的: 既存のリソースを削除する。 / エンドポイント例: /items/1


3. 各CRUDエンドポイントの実装(アイテムリソース /items の場合)

C: Create(作成)

  • メソッドとURL / POST /items

  • クライアントからの入力 / 説明: リクエストボディに、作成したいアイテムのデータ(JSON形式など)を含めます。

  • サーバーでの処理 / 説明: リクエストボディのデータを検証し、問題なければデータベースに新しい行を**INSERT**します。

  • レスポンス / 説明: 通常、作成が成功したことを示す 201 Created ステータスコードと、作成されたアイテムのデータを返します。

R: Read(読み取り)

  • メソッドとURL (一覧) / GET /items

  • サーバーでの処理 (一覧) / 説明: データベースからすべてのアイテムを**SELECT**で取得します。

  • レスポンス (一覧) / 説明: 200 OK ステータスコードと、アイテムのリスト(配列)を返します。

  • メソッドとURL (個別) / GET /items/123

  • サーバーでの処理 (個別) / 説明: URLに含まれるID(例: 123)を使って、データベースから特定のアイテムを**SELECT**で取得します。

  • レスポンス (個別) / 説明: 200 OK と個別のアイテムデータ。リソースが存在しなければ 404 Not Found を返します。

U: Update(更新)

  • メソッドとURL / PUT /items/123 (または PATCH /items/123)

  • クライアントからの入力 / 説明: リクエストボディに、更新したいデータを含めます。

  • サーバーでの処理 / 説明: URLのIDに対応するデータベースの行を、リクエストボディのデータで**UPDATE**します。

  • レスポンス / 説明: 通常、更新が成功したことを示す 200 OK204 No Content を返します。

D: Delete(削除)

  • メソッドとURL / DELETE /items/123

  • サーバーでの処理 / 説明: URLのIDに対応するデータベースの行を**DELETE**します。

  • レスポンス / 説明: 削除が成功したことを示す 200 OK204 No Content を返します。


⭐ 演習課題

あなたはユーザー情報(リソース名: /users)を管理するシンプルなAPIを開発しています。

  1. 新しいユーザーを作成するためにクライアントが送るべきHTTPメソッドとURLは何ですか?

  2. IDが10のユーザーの名前を更新する操作に、最も適切なHTTPメソッドは何ですか?

  3. IDが10のユーザーを削除するリクエストに対し、サーバーが成功時に返すステータスコードは何が一般的ですか?

  4. /users/abc (IDが数値であるべきところを文字列にした) という不正なリクエストが来た場合、サーバーはどのような4xx系ステータスコードを返すべきですか?

バックエンドエンジニアに関する検定はこちら

面倒な会員登録も不要!すぐに受験!

無料で受験する
広告

検定一覧はこちらから

様々なジャンルの検定から選んで、あなたの知識を試してみましょう。

検定一覧を見る

関連記事

広告