8

我有一個只能通過http基本身份驗證訪問的網頁。如何在JavaScript頁面中找出基本的auth用戶名。即當有人訪問它時(登錄後),我想彈出一個窗口,顯示「您好,您當前以用戶$ USERNAME登錄」從JavaScript獲取HTTP基本認證用戶名?

回答

10

純粹來自JavaScript是不可能的。您必須讓服務器端腳本從請求中提取用戶名,並將其插入到生成的頁面代碼中以供腳本使用。 (如<script type="text/javascript">var username=(此處插入JSON編碼字符串);</script>

1

javascript:window.alert(document.location)似乎給了用戶名(但沒有密碼的網址)。這可能不是在其他瀏覽器中實現。

+0

的用戶名是我的全部需要,而不是密碼,但我敢肯定,我的大部分用戶不會在他們的地址欄中輸入「https://[email protected]」,他們只會將其輸入到瀏覽器彈出框中。方法在這些情況下仍然有效嗎? – Rory 2010-08-11 16:17:06

+0

試試看,我認爲LiveScript/JavaScript/ECMAScript沒有太多的保證,許多瀏覽器都沒有實現所有的相關標準,所以沒有簡單的方法來判斷這是否是「安全「,而無需在您打算支持的所有瀏覽器上進行測試。 – 2010-08-12 16:39:49