2017-05-03 95 views
1

我需要從我的客戶端JavaScript代碼中調用Web服務(它將在網頁加載時運行)。我知道有這樣的庫可以像this one這樣做,或者我可以直接使用描述爲here的jQuery。如何在爲javascript/jQuery API客戶端進行身份驗證時保護憑據?

但我有一個擔心是身份驗證。我需要按照here的描述發送Web服務的用戶名/密碼或授權標頭。現在,如果這不是來自用戶,它似乎需要存儲在瀏覽器端代碼的某個地方,以便在代碼運行時(客戶端)發送它。

這不是明確的,只是通過在我的頁面上查看源代碼才能看到嗎?如果是這樣,我該如何防止呢?

回答

1

那麼你可以編碼用戶名和密碼,所以如果有人看到網頁的視圖源,它會顯示編碼的憑據。

要對憑證進行編碼/解碼,您可以使用atob和btoa Javascript函數。它們出現在大多數瀏覽器的JavaScript實現中。請參閱此鏈接:https://developer.mozilla.org/en/docs/Web/API/WindowBase64/Base64_encoding_and_decoding

將證書發送到服務器時,您可以在發送證書前解碼數據。

爲確保在傳輸過程中不會讀取憑證,不應以純文本形式發送憑證。 HTTPS可用於保護Web服務請求。

相關問題