開發中遇到了basic auth來認證的案例,這里總結一下:
Basic Auth簡單點說明就是每次請求API時都提供用戶的username和password。【base64encode(username+":"+password)】
優點:
1、使用非常簡單,
2、開發和調試工作簡單,
缺點:
1、安全性低,每次都需要傳遞用戶名和密碼,用戶名和密碼很大程度上存在被監聽盜取的可能;
2、同時應用本地還需要保存用戶名和密碼,在應用本身的安全性來說,也存在很大問題;
第一、base64---->案例
import requests, base64 usrPass = "userid:password" b64Val = base64.b64encode(usrPass)
post_data=[]
api_URL="https://www.baidu.com"
r=requests.post(api_URL, headers={"Authorization": "Basic %s" % b64Val},data=post_data)
第二、requests 的HTTPBasicAuth---->案例
import requests from requests.auth import HTTPBasicAuth url = 'https://www.baidu.com/test/api' resp = requests.get(url,auth=HTTPBasicAuth('user','password'))
或
resp = requests.get(url,auth=('user','password'))
用Postman請求試一下: