我正在開發一個REST-ful webservice,並且我有一個關於HTTP PUT方法的問題。HTTP PUT的替代機構
我想允許人們使用應用程序/表單數據請求主體提交內容。但是,默認響應將在application/xml中。
這是可以接受的嗎?
埃弗特
我正在開發一個REST-ful webservice,並且我有一個關於HTTP PUT方法的問題。HTTP PUT的替代機構
我想允許人們使用應用程序/表單數據請求主體提交內容。但是,默認響應將在application/xml中。
這是可以接受的嗎?
埃弗特
內容類型僅在單個請求的範圍內很重要。他們所做的只是描述正在發送的內容的格式。
您的網絡服務應提供客戶請求最能接受的響應,它能夠提供。客戶端請求應包含描述可接受內容類型的Accept頭。如果你的服務不能提供任何在此標頭中的內容類型,然後返回406 Not Acceptable
在你的情況,如果您的客戶端請求GET
包括application/xml
在接受頭則是罰款與application/xml
迴應,無論任何PUT
的對請求的資源提出請求。
編輯:
的status code definition爲406 Not Acceptable
包括具有以下的說明:
注:HTTP/1.1服務器被允許返回其是 不能接受根據在發送的接受標頭的響應 請求。在某些情況下,這甚至可能比發送迴應更可取。鼓勵用戶代理檢查傳入響應的頭部以確定其是否可接受。
因此,您可以隨時返回application/xml
。
RESTful服務應該使用正確的HTTP方法(GET,HEAD,PUT,DELETE或POST)的行動,確保任何作用域信息包含在所述URI,並確保該HTTP消息信封確實不包含另一個信封,即SOAP。
有趣的文章,但它並沒有回答我的問題.. 例子: 我換上新的文章/文章/ firstpost,我得到的選項,使用的內容類型任一應用程序/ XML或應用程序的/形式數據。我選擇後者。 然後我在文章上做了一個GET,並且我收到了application/xml表示形式。這可以嗎? – Evert 2009-06-11 19:09:41