5
我想將HTTP基本身份驗證標題存儲在身份驗證Cookie中,這樣我就不必在隨後的請求中處理授權頭(我正在使用jQuery):Ajax:HTTP基本身份驗證和身份驗證Cookie
authenticate: function(auth) {
var header = "Basic " + $.base64.encode(auth.username + ":" + auth.password);
document.cookie = "Authorization: " + header;
$.ajax({
type: "GET",
url: "http://someurl",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: auth.success,
error: auth.error
});
},
雖然這似乎對於誰登錄的第一個用戶的工作,它不會對瀏覽器會話中的任何其他用戶的工作,因爲後續授權頭被加入,而不是覆蓋。我知道可以使用name=value
語法覆蓋cookie,但該語法不適用於授權標頭。
有沒有什麼辦法擺脫舊的授權頭一旦新用戶登錄?
任何幫助,將不勝感激。謝謝,JeHo
你可以更改服務器端的任何代碼嗎?你使用什麼語言(PHP,Python等)? – bpedro 2010-03-16 15:17:36
服務器端是一個selfhosted(WebServiceHost)wcf數據服務(用C#編寫)。我是這個東道主的老闆,所以我可以改變它 - 但我擔心可能性是有限的。 – Jeldrik 2010-03-16 15:51:08