このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

PUT リクエストメソッド

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

PUTPOST との違いは、PUTべき等であることです。1 回だけ呼び出しても、連続して複数回呼び出しても違いはありません(副作用がありません)。

リクエストの本文 あり
成功時のレスポンスの本文
安全性 なし
べき等性 あり
キャッシュ 不可
HTML フォームでの使用 不可

構文

http
PUT <request-target>["?"<query>] HTTP/1.1
<request-target>

Host ヘッダーで提供される情報と組み合わせたときの、リクエストのターゲットリソースを識別します。 これは元のサーバーへのリクエストにおいては絶対パス(/path/to/file.html など)であり、プロキシーへのリクエストにおいては絶対 URL(http://www.example.com/path/to/file.html など)です。

<query> 省略可

疑問符 ? で始まるオプションのクエリー成分。 多くの場合、key=value の組の形で識別情報を保持するために使用されます。

リクエスト

次の PUT リクエストは、example.com/new.html<p>新しいファイル</p> というコンテンツでリソースを作成するよう要求します。

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

<p>新しいファイル</p>

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

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

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

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

仕様書

Specification
HTTP Semantics
# PUT

ブラウザーの互換性

ブラウザーはユーザー主導のアクションにPUTメソッドを使用しないため、「ブラウザー互換性」は適用されません。 開発者は fetch() を使ってこのリクエストメソッドを設定することができます。

関連情報