1. 程式人生 > >http中的一個請求頭讓我反思...

http中的一個請求頭讓我反思...

前言:好久沒更新部落格了,一方面是工作真的很忙,二來感覺這段時間中沒接觸到比較有價值的技術點沒寫。

正文:最近在做一個專案,是基於開源框架搭建的伺服器,比如redmine,zabbix,grafana等,寫安卓客戶端。將這些伺服器採集到的資料再app中展示。一個看是很常規比較容易的專案,但是這伺服器是開源的,不是自己公司後的人寫的,且這些開源伺服器是針對web前端頁面設計的,在請求和返回值上,移動端要針對性的去處理,所以自己去開源官方的文件找資料摸索。在請求一個介面的時候,沒有入參,但是demo中呼叫那個介面後就能拿到正確資料,我當時以為是cookie之類的要同步,結果折騰半天硬是不行,後臺仔細一看,demo請求中有個頭 Authorization: Basic xxxxxxxxxxxxxxx,原來要帶上這個基本認認證頭,但是問題又來了,那個Basic要怎麼來呢?通過翻閱資料得到:這是 HTTP基本認證是一種用來允許Web瀏覽器,或其他客戶端程式在請求時提供以使用者名稱和口令形式的憑證的登入方式。使用者名稱追加一個冒號然後串接上口令,得出的結果字串再用Base64演算法編碼,就是這個Basic 的值了。這個小細節花費了我半天功夫,還是太大意了,一直以為自己對http協議很熟悉,結果栽了。引以為戒,謹慎積累。