DELETEメソッド解説|DELETEリクエストを送信する方法

DELETEメソッドはデータ削除用のHTTPメソッドとして、Webアプリ開発中に利用されることが必要です。本文ではDELETEメソッドの基本情報を詳しく解説した上、非常に使いやすいAPIクライアントを使って、DELETEリクエストを送信する方法を皆さんに紹介します。

中村 拓也

中村 拓也

11 5月 2025

DELETEメソッド解説|DELETEリクエストを送信する方法

DELETEメソッドはデータ削除用のHTTPメソッドとして、Webアプリ開発中に利用されることが必要です。本文ではDELETEメソッドの基本情報を詳しく解説した上、非常に使いやすいAPIクライアントを使って、DELETEリクエストを送信する方法を皆さんに紹介します。

button

DELETEメソッドの基本情報

それでは、本記事では、まずはDELETEメソッドの基本情報を皆さんに紹介していきたいと思います。

DELETEメソッドとは

DELETEメソッドとは、HTTPプロトコルの1つのメソッドで、サーバー上のリソースを削除するために使われます。クライアントがDELETEメソッドでリクエストを送信すると、サーバーはそのURIで指定されたリソースを削除します。

DELETEメソッドの特徴

DELETEメソッドはRESTfulなAPI設計において重要な役割を果たしています。DELETEメソッドは、リソースの削除を安全に行うために推奨されているHTTPメソッドになります。次のような特徴があります:

なぜDELETEメソッドを見るのが少ない感じがある?

DELETEメソッドが実際にはあまり利用されていない大きな原因の1つは、多くのAPIがRESTの設計規範に厳密には遵守していないことにあると言えます。例えば、多くのAPIはREST原則から外れたAPI設計をしている場合が多く、データ変更(添削や更新など)に関する全ての操作もPOSTメソッドによって実現されています。

また、リソースを削除すると、復元することが難しいので、セキュリティ面での考慮のため、リソースを削除することより、リソースを無効化にした方が安全になるので、DELETEメソッドの使用頻度がさらに下がります。

このように、実用性を重視するためにRESTの原則が守られていないことが多いとはいえ、RESTの設計規範にきちんと遵守すると、APIの数が多くなっても、混乱せず効率的に管理できるのでしょう。

DELETEメソッドのデータ渡し方とHTTPボディ

それでは、DELETEメソッドを特定のリソースを削除するために、データ(パラメータ)の渡し方は何でしょうか?DELETE対象のリソースを特定するために、パスとクエリパラメータでデータを渡すことも可能ですが、HTTPボディでデータを渡すことも可能です。具体的にどのような手段でデータを渡すのは、それぞれのAPI仕様書を確認する必要があります。

DELETEメソッドでHTTPボディを使用する場合と使用しない場合のコードサンプルは以下のようになります。

ボディを使用しない場合

DELETEメソッドで次のように、URIのパスに対象リソースを指定し、HTTPボディを全く使用しないことが許可されます。

DELETE /users/1234 HTTP/1.1
Host: example.com

ボディを使用する場合

URIのパスには基本的な対象(DELETE /users)を指定して、ボディに条件を指定して、条件にマッチする複数ユーザーを削除することも実現できます。

DELETE /users HTTP/1.1
Host: example.com
Content-Type: application/json

{
  "lastLoginDate": {
    "$lt": "2022-01-01"
  }
}

また、DELETEリクエストによる削除操作に追加情報を提供したい場合は、次のように、それらの情報をHTTPボディに追加することもできます。

DELETE /users/1234 HTTP/1.1 
Host: example.com
Content-Type: application/json

{
  "deletedBy": "admin",
  "reason": "Spam user" 
}

ApidogでDELETEリクエストを簡単に送信!

それでは、もしDELETEリクエストを送信してリソースのデータを削除したい場合、どうやって実装すればいいですか?この部分では、日本語対応API管理ツールのApidogで1クリックだけでDELETEリクエストを送信できる方法を皆さんに紹介します。HTTPボディの使用を問わず、Apidogは全てのタイプのDELETEリクエストを直感的な操作で送信できます。

button

Bodyを使用しないDELETEリクエストの送信

ApidogでDELETEリクエストを送信して、サーバー上のリソースを削除する場合は、次の画像のように、パスパラメータかクエリパラメータを利用して、削除対象を指定できます。

ApidogでパスとクエリでDELETE対象を指定

Bodyを使用するDELETEリクエストの送信

また、Bodyを利用して、削除操作に情報を追加したり、削除対象を条件で複数指定したりする必要がある場合、「Body」タブに切り替えて、適切なデータフォーマットを選択して、データを記入することもできます。

ApidogでBodyでDELETE対象を指定
button

Explore more

MindsDB: あらゆるITユーザーのための万能MCPサーバー

MindsDB: あらゆるITユーザーのための万能MCPサーバー

MindsDBは、200以上のデータソースへの接続を容易にし、AIアプリの構築やインサイトの探索をプロのように実現します。さらなるデータソースの接続や、APIdogでのAPIドキュメント化をお試しください。

26 5月 2025

IT初心者必見!Google Drive MCPサーバーでAIを強化する方法

IT初心者必見!Google Drive MCPサーバーでAIを強化する方法

MCPサーバーは、AIをソフトウェア開発でより効果的なパートナーにし、生産性を向上させます。Google Drive MCPサーバーはAIのデータ統合を簡素化し、API開発ではApidog MCPサーバーが重要な役割を果たします。

22 5月 2025

2025最新:Node.jsでWebSocketを利用する

2025最新:Node.jsでWebSocketを利用する

WebSocketはブラウザとサーバー間のリアルタイムな双方向通信を可能にする技術です。Node.jsでwsモジュールを使って、WebSocket通信を簡単に実現することができます。本文では、Node.jsでWebSocketを利用する方法を紹介します。必要な方はぜひこの記事の内容を参照してください。

12 5月 2025

ApidogでAPIデザイン中心のアプローチを取る

APIの開発と利用をよりシンプルなことにする方法を発見できる