Python使用MD5加密password進行登錄


登錄時,未加密狀態下,請求接口

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)

此時,可實現自動加密密碼,可完成登錄操作


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM