title | slug |
---|---|
PUT |
Web/HTTP/Methods/PUT |
{{HTTPSidebar}}
HTTP の PUT
リクエストメソッドは、新しいリソースを作成するか、指定したリソースの表現をリクエストのペイロードで置き換えます。
PUT
と {{HTTPMethod("POST")}} との違いは、PUT
はべき等であり、呼び出し回数が 1 回でも複数回でも同じ効果になる(副作用がない)一方で、 {{HTTPMethod("POST")}} は連続して同じものを実行すると、注文を複数回渡してしまうなどの追加の影響が発生する可能性があります。
リクエストの本文 | あり |
---|---|
成功時のレスポンスの本文 | なし |
{{Glossary("Safe/HTTP", "安全性")}} | なし |
{{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
{{Specifications}}
{{Compat}}
- {{HTTPStatus("201")}}
- {{HTTPStatus("204")}}