我目前正在使用的應用程序有一個會話超時值。如果用戶沒有互動的情況比這個值長的時間,他們嘗試加載下一頁,他們將被提示登錄。HTTP 401 - 什麼是適當的WWW-Authenticate標頭值?
提出通過這一機制,其中包括AJAX調用路由的所有請求。最初,我們發送了一個包含登錄頁面的200頭文件,它引入了AJAX的一些問題,因爲如果發送了200響應,代碼就會運行,並且從這些RPC調用返回的大部分數據都是JSON或獲得評估的原始JavaScript問:|)。
我認爲401是更好的,因爲我們的JSON解析器不會嘗試使用一個HTML登錄頁面.. :)
當reading the spec,但是,我注意到,WWW-Authenticate
場絕也被髮送。
什麼是該領域的良好價值? Application Login
會不會足夠?
感謝隊友,現在我使用的是403,而不是因爲它不是重定向,它從字面上包含登錄表單代替原始頁面。它也更符合W3規範。 但是,感謝您的信息。 – 2009-11-17 13:46:53
查看關於如何仍然可以使用HTTP 401的答案:http://stackoverflow.com/questions/928874/how-do-i-keep-firefox-from-prompting-for-username-password-with-http-basic -auth/19102200#19102200 – lanoxx 2013-09-30 19:59:33
是的,只要把任何東西放在WWW-Authenticate頭文件中,我想。類似的另一個答案是http://stackoverflow.com/a/1088127/689161或者乾脆違反規範,不要打擾發送標題(至少有幾個網站這樣做); 401仍然比403更合適。 – gengkev 2015-03-16 17:23:10