python之路-----django 自定義cookie簽名

   1.默認自定義cookiedjango

    在使用擴展簽名時,會根據settings 配置中的  SIGNING_BACKEND 來運行加密方法,默認使用 django.core.signing.TimestampSigner 類進行加密和解密cookie

    查看: set_signed_cookie 函數,咱們打印  get_cookie_signer 的返回值,能夠得知是:django.core.signing.TimestampSigner 對象。函數

  查看 get_cookie_signer 函數,能夠看出根據: settings.SIGNING_BACKEND  來配置加解密的類方法。默認使用:django.core.signing.TimestampSigner。 加密

  查看django.core.signing.TimestampSigner 類 ,有sign和unsign方法來實現加解密,因此咱們自定義類時,也必須有這兩個方法來進行加解密,而且方法名稱不能變動(不然須要修改django其餘源碼)3d

 

  2.自定義擴展cookie對象

    2.1 創建 一個 模塊文件:c1,新建 類 my_cookie.繼承: TimestampSigner 類blog

    2.2 定義類方法 sign 和 unsign繼承

    2.3 settings文件中配置: SIGNING_BACKEND=‘c1.my_cookie’get

  

 

相關文章
相關標籤/搜索