MKCOL

要求メソッド MKCOL (HTTP)

[27] MKCOL は、コレクションの作成を求める要求メソッドです。

仕様書

意味

[8] MKCOL 要求メソッドは、要求URL で指定した位置に新しいコレクションを作成することを求めるものです >>7。

[3] 書き込みロックの適用対象となります >>2。

[5] MKCOL メソッドは資源が存在しない時にだけ作成するので、 既存のコレクションを上書きすることはなく、 lost update問題はおきません。 >>4

[6] MKCOL と LOCK をパイプライン送信することでロックを得る確率を高めることができますが、保証はされません >>4。

[19] 安全なメソッドではありませんが、冪等メソッドです >>7。

構文

[13] 要求の payload body は指定してもしなくても構いません。

[14] payload body が無い場合には、空のコレクションを作成することを表します。

[15] payload body がある場合には、コレクションのメンバー、本体、 コレクションやメンバーの特性を指定することができます >>7。

[16] ただしそのための標準化された方法は用意されていません。

処理

[26] WebDAV に従う資源は、 MKCOL 要求に対応しなければなりません >>25。

[9] 要求URLが既に資源に写像されていれば、 MKCOL 要求は失敗しなければなりません >>7。

[10] 鯖は、要求URLが / である場合を除き、 要求URLをその親のコレクションの内部メンバーとしなければなりません >>7。そのような祖先が存在しない時には、 409 応答を返して失敗しなければなりません >>7。

[11] 例えば /a/b/c/d/ を作る際に /a/b/c/ が存在しなければ、 409 を返さなければなりません >>7。

[21] 鯖が指定した位置にコレクションを作成することを認めていない場合や、 親コレクションがメンバーを受け付けていない時には、 403 応答を返します >>7。

[22] 既に他の資源に写像されている URL が指定された時は、 405 応答を返します >>7。

[12] 要求に payload body が無かった場合には、新しく作ったコレクションはメンバーを持つべきではありません >>7。

[17] 要求に payload body が指定された場合の動作は未定義ですが、 鯖が対応しない種類の場合は、 415 応答を返さなければなりません。 >>7

[28] LNR の場合、コレクションに変換します >>29。

[20] コレクションを作成した場合には、 201 応答を返します >>7。 3xx を返してはなりません >>24。

[23] ストレージ制限によりコレクションを作成できなかった場合には、 507 応答を返します >>7。

[18] 応答はキャッシュ不可能です >>7。

[30] RFC 5689 - Extended MKCOL for Web Distributed Authoring and Versioning (WebDAV) ( 版) <https://tools.ietf.org/html/rfc5689>

[31] RFC 8144 - Use of the Prefer Header Field in Web Distributed Authoring and Versioning (WebDAV) () <https://tools.ietf.org/html/rfc8144#section-2.3>

[32] RFC 3253 - Versioning Extensions to WebDAV (Web Distributed Authoring and Versioning) () <https://tools.ietf.org/html/rfc3253#section-12.9>

[33] RFC 3253 - Versioning Extensions to WebDAV (Web Distributed Authoring and Versioning) () <https://tools.ietf.org/html/rfc3253#section-14.5>

[34] RFC 5689 - Extended MKCOL for Web Distributed Authoring and Versioning (WebDAV) () <https://tools.ietf.org/html/rfc5689>