Django 中使用 js 操作 cookies


session與cookie對比

Cookie:

保存在用戶瀏覽器端的鍵值對
本地可以修改;如果有敏感信息,可以被看到

Session:

保存在服務器端的鍵值對
服務端:保存鍵值對{'隨機字符串':{……用戶信息……}},通過cookie保存隨機字符串到客戶端上。


在 app01 上添加文件夾 static ,並把 jquery.cookie.js 和 jquery.min.js 放入

在 templates 文件夾下添加 js_cookie.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="/static/jquery.min.js"></script>
    <script src="/static/jquery.cookie.js"></script>
</head>
<body>

</body>
</html>

修改 views.py,在最后添加

def js_cookie(req):
    obj = render(req, 'js_cookie.html')
    obj.set_signed_cookie('what', 'else')
    # 對應的如果要獲取加密的 cookie 值,需要使用 get_signed_cookie()方法
    return obj

修改 urls.py

from django.contrib import admin
from django.urls import path

from app01 import views

urlpatterns = [
    path('admin/', admin.site.urls),
    path('login.html', views.login),
    path('index.html', views.index),
    path('js_cookie.html', views.js_cookie),
]

在 settings.py 添加

STATICFILES_DIRS=(
    os.path.join(BASE_DIR, "static"),
)

在瀏覽器上輸入 http://127.0.0.1:8000/js_cookie.html
按 F12 選擇 Network 點擊 Cookies ,可以查看 cookies ,在 Console 處可以輸入 js 命令

# 查看現有 cookies
document.cookie

# 設置 cookies
document.cookie = 'k1=v1'

# jquery 獲取 k1 的值
$.cookie('k1')

# jquery 設置 cookie
$.cookie('k2','v2')


免責聲明!

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



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