您好,登錄后才能下訂單哦!
前言
基于 Internet的各種服務(wù)系統(tǒng)應(yīng)運(yùn)而生,建立商業(yè)站點(diǎn)或者功能比較完善的個(gè)人站點(diǎn),常常需要記錄訪問者的一些信息;論壇作為 Internet發(fā)展的產(chǎn)物之一,在 Internet 中發(fā)揮著越來越重要的作用,是用戶獲取、交流、傳遞信息的主要場所之一,論壇常常也需要記錄訪問者的一些基本信息(如身份識別號碼、密碼、用戶在 Web 站點(diǎn)購物的方式或用戶訪問該站點(diǎn)的次數(shù))。目前公認(rèn)的是,通過 Cookie 和 Session 技術(shù)來實(shí)現(xiàn)記錄訪問者的一些基本信息。
下面就來一起看看Django中cookie的基本使用,話不多說了,來一起看看詳細(xì)的介紹吧。
1.簡述
(1)設(shè)置Cookies
response.set_cookie("cookie_key","value")
(2)獲取Cookies
value = request.COOKIES["cookie_key"]
(3)刪除Cookies
response.delete_cookie("cookie_key",path="/",domain=name)
(4)檢測Cookies
if "cookie_name" in request.COOKIES :
(5)response.set_cookie()
傳遞一些可選的參數(shù) 描述
2.示例
2.1設(shè)置Cookies
login_user = models.User.objects.get(username=username, password=password) # 這里用的mongodb進(jìn)行的數(shù)據(jù)存儲 # print(login_user["username"]) # 帳號和密碼正確,cookie保存登錄狀態(tài) # 獲取相應(yīng)對象 response = redirect(reverse("blog:index")) # 設(shè)置cookie response.set_cookie("blog_username", login_user["username"], 604800) #過期時(shí)間單位是s (這里設(shè)置為7天) response.set_cookie("blog_password", login_user["password"], 604800)
2.2檢測、獲取Cookies
def index(request): # 檢測cookies是否存在 if "blog_username" in request.COOKIES: # 獲取cookies login_username = request.COOKIES.get("blog_username") login_password = request.COOKIES.get("blog_password") # 獲取登錄用戶信息 login_user = models.User.objects.get(username=login_username, password=login_password) # 返回登錄成功后頁面 return render(request, "blog/index.html", {"login_user": login_user}) else: # 進(jìn)入未登錄狀態(tài)的主頁 return render(request, "blog/index.html")
2.3刪除Cookies
# 注銷登錄視圖函數(shù) def logout(request): response = redirect(reverse("blog:index")) response.delete_cookie("blog_username") response.delete_cookie("blog_password") return response
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對億速云的支持。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。