2015-04-05 12 views
0

我不知道服務器應該如何使用HTTP標頭"Accept Language",以防服務器有請求的資源但不使用指定的語言。服務器是否應該返回任何類型的錯誤(404,或「找不到資源」等)或者成功,但使用可用語言的資源?HTTP標頭`Accept-Language`:服務器應該嚴格使用它還是隻是作爲首選項?

在這種情況下,HTTP規範是否提及或推薦使用?
我看過"RFC2616 - 14.4 Accept-Language"但我不是很清楚。

我知道快速的解決辦法是增加Accept Language: *的頭,但我想了解什麼是正確的位置,並嘗試在右側(也許服務器或可能客戶端)

任何幫助表示讚賞解決這個。

回答

2

首先,不推薦使用RFC 2616,而應參考RFC 7230-7235。

RFC 7231 – 5.3.5. Accept-Language你可以閱讀:

如果頭字段 存在於請求,並沒有爲 可用表示的反應有一個匹配的語言標籤,源服務器可以 要麼忽略通過將響應視爲 不受內容協商或通過 發送406(不可接受)響應來承擔頭部字段。然而,後者並不鼓勵,因爲這樣做可能會阻止用戶訪問他們可能能夠使用的內容(例如,使用翻譯軟件)。

因此,要麼忽略標題,並用默認的語言表示進行響應。或者回復這個請求是不可接受的,這是作者不鼓勵的。但是,您可以使用406響應來提供可用語言表示的列表。

相關問題