#?SuikaWiki/0.9 page-icon="HTTP" [[#comment]] *仕様書から **12.2 Negotiation on transactions other than GET and HEAD [1] > If a resource is transparently negotiable, this only has an impact on the GET and HEAD transactions on the resource. It is not possible (under this specification) to do transparent content negotiation on the direct result of a POST request. 資源が透過折衝可能であるときには、これはその資源の [CODE(HTTP)[[[GET]]]] 及び [CODE(HTTP)[[[HEAD]]]] の処理にのみ影響します。 (この仕様書では) [CODE(HTTP)[[[POST]]]] 要求の直接の結果について透過内容折衝することは不可能です。 > However, a POST request can return an unnegotiated 303 (See Other) response which causes the user agent to do a GET request on a second resource. This second resource could then use transparent content negotiation to return an appropriate final response. The figure below illustrates this. しかし、 [CODE(HTTP)[POST]] 要求は利用者エージェントに2番目の資源に [CODE(HTTP)[GET]] 要求を行わせる折衝しない [CODE(HTTP)[[[303]]]] (他を見よ) 応答を返すことが出来ます。 この2番目の応答の方は透過内容折衝を使って適当な最終応答を返すことができます。 次の図はこれを図示しています。 > [PRE[ Server ______ proxy ______ proxy ______ user x.org cache cache agent < ------------------------------------- | POST http://x.org/cgi/submit |
| -------------------------------------- > 303 See Other | Location: http://x.org/result/OK | | < ------------------------------------- | GET http://x.org/result/OK | small Accept- headers | able to choose on behalf of user agent | ------------------------------------- > choice response with | ..result/OK.nl variant | displays OK.nl ]PRE] > See the HTTP/1.1 specification [1] for details on the 303 (See Other) status code. Note that this status code is not understood by some HTTP/1.0 clients. ** RFC の部分の License [[RFCのライセンス]] * メモ