--- title: PUT slug: Web/HTTP/Methods/PUT tags: - HTTP - Reference - リクエストメソッド translation_of: Web/HTTP/Methods/PUT ---
{{HTTPSidebar}}

HTTP の PUT リクエストメソッドは、新しいリソースを作成するか、指定したリソースの表現をリクエストのペイロードで置き換えます。

PUT と {{HTTPMethod("POST")}} との違いは、PUT はべき等であり、呼び出し回数が1回でも複数回でも同じ効果になります(作用がありません)が、連続して同じ {{HTTPMethod("POST")}} を実行すると、注文を複数回渡してしまうなどの追加の影響が発生する可能性があります。

リクエストの本文 あり
成功時のレスポンスの本文 なし
{{Glossary("Safe", "安全性")}} なし
{{Glossary("Idempotent", "べき等性")}} あり
{{Glossary("Cacheable", "キャッシュ")}} 不可
HTML フォームでの使用 不可

構文

PUT /new.html HTTP/1.1

リクエスト

PUT /new.html HTTP/1.1
Host: example.com
Content-type: text/html
Content-length: 16

<p>New File</p>

レスポンス

対象リソースに現在の表現が存在せず、 PUT リクエストによって正常に作成された場合、サーバーは {{HTTPStatus("201")}} (Created) レスポンスをユーザーエージェントに通知します。

HTTP/1.1 201 Created
Content-Location: /new.html

対象リソースに現在の表現が存在し、その表現が内容の表現の状態に従って変更が完了した場合、サーバーは {{HTTPStatus("200")}} (OK) または {{HTTPStatus("204")}} (No Content) の何れかのレスポンスによって、リクエストが正常に完了したことを示します。

HTTP/1.1 204 No Content
Content-Location: /existing.html

仕様書

仕様書 題名
{{RFC("7231", "PUT", "4.3.4")}} Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content

ブラウザーの互換性

{{Compat("http.methods.PUT")}}

関連情報