登錄時,未加密狀態下,請求接口
from configs.config import HOST import requests # 封裝一個登錄類 class Login(): def login(self,inData):#登錄方法 #url路徑,環境放配置文件,可維護性 url = HOST+'/api/loginS' #參數 payload = inData #請求 resp = requests.post(url,json=payload) return resp.json() if __name__ == '__main__':#快捷鍵 Ctrl+j res=Login().login({"username":"20154084","password":"123456"}) print(res)#返回雙引號是json 單引號是dict
登錄時,直接傳入原始密碼,未進行MD5加密時,會報錯,提示密碼錯誤,這時我們可以用在線工具進行手動轉換
傳入手動轉換后的MD5加密串:
from configs.config import HOST import requests # 封裝一個登錄類 class Login(): def login(self,inData):#登錄方法 #url路徑,環境放配置文件,可維護性 url = HOST+'/api/loginS' #參數 payload = inData #請求 resp = requests.post(url,json=payload) return resp.json() if __name__ == '__main__': res=Login().login({"username":"20154084","password":"e10adc3949ba59abbe56e057f20f883e"}) print(res)#返回雙引號是json 單引號是dict
此時,登錄接口已經正常登錄,並返回對應的數據。
如何自動加密,無需手動加密再登錄?
封裝一個加密函數即可
from configs.config import HOST import requests import hashlib import pprint #封裝一個md5加密函數 def get_md5(psw): """ :param psw: :return: """ #實例化一個md5對象 md5=hashlib.md5() #調用加密方法 md5.update(psw.encode("utf-8")) return md5.hexdigest() # 封裝一個登錄類 class Login(): def login(self,inData,mode=True):#登錄方法 #url路徑,環境放配置文件,可維護性 url = HOST+'/api/loginS' #字典名[鍵名]=新的值 字典修改值操作 inData["password"] = get_md5(inData["password"]) #參數 payload = inData #請求 resp = requests.post(url,json=payload) if mode:#獲取token return resp.json()["token"]#返回字典類型 else:#獲取相應數據 return resp.json()#返回字典類型 if __name__ == '__main__':#快捷鍵 Ctrl+j res=Login().login({"username":"20154084","password":"123456"}) print(res)#返回雙引號是json 單引號是dict pprint.pprint(res)
此時,可實現自動加密密碼,可完成登錄操作