zoukankan      html  css  js  c++  java
  • 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')
    
  • 相关阅读:
    举例一个IO多路复用的C/S例子
    简单介绍协程
    生产者消费者模型
    多进程介绍
    有关多线程(同步锁,递归锁,同步对象,信号量)
    threading多线程模块
    开发一个支持多用户在线的FTP程序
    NTP时间服务器与客户端
    EF之增删改查
    返回新插入的数据的主键ID
  • 原文地址:https://www.cnblogs.com/klvchen/p/11018241.html
Copyright © 2011-2022 走看看