开发中遇到了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请求试一下: