跳到主要內容

Android Webview 使用 Basic Authentication 通訊

參考文章:
http://en.wikipedia.org/wiki/Basic_access_authentication

這篇沒有技術成分,當成聊聊 Basic Authentication 就好

Basic Authentication 的說明看英文的wiki會比較明顯,中文的wiki我反而看不懂...
作為早期開發的使用者身分認證交換機制
他的優點在於簡單,不需要cookie、session
只需要在瀏覽器送出的Request裡加入header即可,所有瀏覽器均支援此機制
缺點也很明顯,就是安全性不夠好
所以現在的網路身分認證基本上不會用這個方式進行
現在會看到他的場合大多是軟體服務商提供的 API 通訊

不少的公開API服務的進行方式會是:
進行使用者身分認證 -> 取得Token -> 用Token 進行 Basic Authentication,並進行API操作

服務商的Server端會根據Token判別使用者,並依此決定回傳的內容
在JavaScript添加 request header 的需求常見,所以做法好找也不多提了
之前開發 Android 程式時需要用webview
查了下發現做法非常簡單,loadUrl method有一個版本能傳入Header為第二個參數

HashMap<String, String> extraHeaders = new HashMap<String, String>();
traHeaders.put("Authorization", "Basic " + Token);
mWebView.loadUrl(url, extraHeaders);

這樣就是常見的API Token在Webview裡的使用方式囉

留言