編輯:這個問題已經變得無關緊要,因爲我發現setRequestHeader技術在v18和v19上均可使用。 http://code.google.com/p/chromium/issues/detail?id=123150#c39上的海報似乎是不正確的說這種方法不適用於v18 - 它的確如此。當我被允許時,我會在8小時內更新這個答案!沒有使用window.navigator.appVersion檢測Chrome的版本
我使用的Chrome擴展是一個自動測試工具。它已經覆蓋了用戶代理(在啓動chrome時通過命令行),所以我不能再使用appVersion查看chrome的版本。
有一些其他的方式來檢測在Javascript的Chrome版本?
背景:我使用XMLHTTP請求的基本認證保護的頁面。
取決於V18 V19或+我現在必須採取不同的行動,谷歌在V19的URL(見http://code.google.com/p/chromium/issues/detail?id=123150#c39)去除的嵌入基本身份驗證。
這是一個自動的腳本,所以我不會在那裏輸入用戶名或密碼,但他們都知道的腳本。
if (v18_or_earlier)
{
xmlhttp.open("POST", url, true, http_basic_username, http_basic_password) ;
}
else //v19+
{
xmlhttp.open("POST", get_upload_url(), true);
var auth_header = "Basic " + Base64.encode(http_basic_username + ":" + http_basic_password) ;
xmlhttp.setRequestHeader("Authorization", auth_header) ;
}
xmlhttp.send(post_body) ;