Django設置/獲取/刪除cookie


# 設置cookie

def setCookie(request):
obj = HttpResponse('OK')
obj.set_cookie('isLogin', True)
obj.set_cookie('username', 'ruan')
return obj



# 獲取cookie

def getCookie(request):
  print(request.COOKIES)
  username = request.COOKIES.get('username')
  isLogin = request.COOKIES.get('isLogin)


# 刪除cookie

def getCookie(request):
  obj = Httpresponse('OK')
  obj.delete_cookie('username)
  obj.delete_cookie('isLogin')
  return obj

關於cookie,須要記住幾點:前端

    - 1.cookie是保存在用戶瀏覽器的已加密的鍵值對跨域

    - 2.能夠被主動清除(瀏覽器界面、前端、後臺)瀏覽器

    - 3.能夠被"僞造"安全

    - 4.處於隱私保護的目的,禁止跨域共享:即www.googole.com和www.baidu.com各自的cookie不可被共享,由於域名對應的谷歌公司和百度公司服務器是不一樣的。服務器

 

 

 

cookie參數

屬  性  名 描    述
String name 該Cookie的名稱。Cookie一旦建立,名稱便不可更改
Object value 該Cookie的值。若是值爲Unicode字符,須要爲字符編碼。若是值爲二進制數據,則須要使用BASE64編碼
int maxAge 該Cookie失效的時間,單位秒。若是爲正數,則該Cookie在maxAge秒以後失效。若是爲負數,該Cookie爲臨時Cookie,關閉瀏覽器即失效,瀏覽器也不會以任何形式保存該Cookie。若是爲0,表示刪除該Cookie。默認爲–1
boolean secure 該Cookie是否僅被使用安全協議傳輸。安全協議。安全協議有HTTPS,SSL等,在網絡上傳輸數據以前先將數據加密。默認爲false。當使用https式,必需要secure設置爲Y=True。
String path 該Cookie的使用路徑。若是設置爲「/sessionWeb/」,則只有contextPath爲「/sessionWeb」的程序能夠訪問該Cookie。若是設置爲「/」,則本域名下contextPath均可以訪問該Cookie。注意最後一個字符必須爲「/」
String domain 能夠訪問該Cookie的域名。若是設置爲「.google.com」,則全部以「google.com」結尾的域名均可以訪問該Cookie。注意第一個字符必須爲「.」
boolean httponly 限制在瀏覽器控制檯獲取鍵值對,但沒法對抓包工具進行限制。
相關文章
相關標籤/搜索