当前位置: 首页 > news >正文

自己做视频网站只能用地址连接重庆微信网站制作专家

自己做视频网站只能用地址连接,重庆微信网站制作专家,网站模板简易修改,甘肃省建设银行网站【0】cookie、session和Token的发展史 【1】Cookie的形式 存储形式#xff1a;k#xff1a;v键值对存储位置#xff1a;客户端缺点#xff1a;不安全#xff0c;信息可能会泄露 【2】session的形式 标识符#xff0c;表示我是当前用户加密出来的数据对敏感信息进行加密…【0】cookie、session和Token的发展史 【1】Cookie的形式 存储形式kv键值对存储位置客户端缺点不安全信息可能会泄露 【2】session的形式 标识符表示我是当前用户加密出来的数据对敏感信息进行加密处理 存储服务端标识符配合上你的加密串把某个数据的标识符字符串全给服务端 客户端存储格式 session_id返回回来的标识符加密串 【3】Cookie方法 【3.1】设置Cookie obj HttpResponse(ok)obj.set_cookie(K,V) HttpResponsedjango的三板斧返回的是字符串.set_cookie(k,v) ------------- 设置cookie kkey值 vvalue值设置cookie是不只是使用django三板斧中的HttpResponse其余两个都能使用 【3.2】cookie取值 request.COOKIES.get(k) 【3.3】设置过期时间 obj.set_cookie(k,v,expires3)obj.set_cookie(k,v,max_age3) expires:设置超时时间单位为秒max_age:设置超时时间单位为秒 【3.4】删除cookie def logout(request,*args,**kwargs):obj redirect(/home/)obj.delete_cookie(sign)return obj 【4】Session 【4.1】session注意事项 session基于数据库表才能使用 必须先迁移数据库生层django_session表session只对当次登录有效 主动清除浏览器中本地存在的session验签发现没有sessionid就会生成新的sessiondjango_session表中的数据取决于浏览器同一个计算机(IP地址)上同一个浏览器只会有一条数据生效同一个计算机(IP地址)上多个浏览器会有多个数据生效当session过期的时候可能会出现多条数据对应一个浏览器 但是这些数据不会持久化存储会被定时清理掉可以手动清除也可以代码清除目的是为了节省服务器数据库资源 【4.2】设置session request.session[sign] user sign -------- k值user -------- v值 【4.3】session取值 sign request.session.get(sign) 【4.4】session设置过期时间 # 设置sessionrequest.session[key] value# 设置过期时间request.session.set_expiry() 参数1、整数设置多少秒过期2、日期设置到指定日期失效3、0退出浏览器失效4、不写失效时间取决于Django内部全局session失效的时间 【4.5】清空session def clear_session(request):request.session.delete() request.session.delete(): 只删除服务端1、该方法用于删除当前用户的Session数据但会保留Session的Key2、这意味着Session对象本身仍然存在但其中的数据将被清空3、下次访问时如果Session没有被重新填充则会得到一个空的Session对象简而言之就是使用request.session.delete()方法会删除浏览器端的session数据库中的数据不会被删除 def clear_session(request):request.session.flush() request.session.flush()服务端和客户端都删除该方法用于完全删除当前用户的Session包括Session对象和所有相关数据下次访问时将创建一个新的空Session对象简而言之就是删除了浏览器端和数据库中的session 【4.6】保存session 1. 数据库Session SESSION_ENGINE django.contrib.sessions.backends.db # 引擎默认2. 缓存Session SESSION_ENGINE django.contrib.sessions.backends.cache # 引擎 SESSION_CACHE_ALIAS default # 使用的缓存别名默认内存缓存也可以是memcache此处别名依赖缓存的设置3. 文件Session SESSION_ENGINE django.contrib.sessions.backends.file # 引擎 SESSION_FILE_PATH None # 缓存文件路径如果为None则使用tempfile模块获取一个临时地址tempfile.gettempdir() 4. 缓存数据库 SESSION_ENGINE django.contrib.sessions.backends.cached_db # 引擎5. 加密Cookie Session SESSION_ENGINE django.contrib.sessions.backends.signed_cookies # 引擎其他公用设置项 SESSION_COOKIE_NAME sessionid # Session的cookie保存在浏览器上时的key即sessionid随机字符串默认 SESSION_COOKIE_PATH / # Session的cookie保存的路径默认 SESSION_COOKIE_DOMAIN None # Session的cookie保存的域名默认 SESSION_COOKIE_SECURE False # 是否Https传输cookie默认 SESSION_COOKIE_HTTPONLY True # 是否Session的cookie只支持http传输默认 SESSION_COOKIE_AGE 1209600 # Session的cookie失效日期2周默认 SESSION_EXPIRE_AT_BROWSER_CLOSE False # 是否关闭浏览器使得Session过期默认 SESSION_SAVE_EVERY_REQUEST False # 是否每次请求都保存Session默认修改之后才保存默认 【5】CBV加装饰器的三种方法 from django.utils.decorators import method_decorator# 方式二放在类视图上面 (放的装饰器函数,name指定你的视图函数里面的方法) # method_decorator(login_auth, nameget) # method_decorator(login_auth, namepost) class UserView(View):# 方式三 dispactch 方法加装饰器 本视图函数内所有的视图都需要走装饰器method_decorator(login_auth)def dispatch(self, request, *args, **kwargs):# Try to dispatch to the right method; if a method doesnt exist,# defer to the error handler. Also defer to the error handler if the# request method isnt on the approved list.if request.method.lower() in self.http_method_names:handler getattr(self, request.method.lower(), self.http_method_not_allowed)else:handler self.http_method_not_allowedreturn handler(request, *args, **kwargs)# 方式一加在视图函数上面# method_decorator(login_auth)def get(self, request, *args, **kwargs):return HttpResponse(这是home页面) 【5.1】补充 CSRF Token相关装饰器在CBV只能加到dispatch方法上 或者加在视图类上然后name参数指定为dispatch方法。   备注 csrf_protect ----------无论settings.py文件中的中间件中的csrf有没有被注释掉都会报错         1、为当前函数强制设置防跨站请求伪造功能         2、即便settings中没有设置中间件            from django.views.decorators.csrf import csrf_exempt, csrf_protect from django.utils.decorators import method_decoratorclass HomeView(View):method_decorator(csrf_exempt)def dispatch(self, request, *args, **kwargs):return super(HomeView, self).dispatch(request, *args, **kwargs)def get(self, request):return render(request, home.html)def post(self, request):print(Home View POST method...)return redirect(/index/)   csrf_exempt  ---------- settings.py文件中的中间件中的csrf没有注释掉也不会报错         1、取消当前函数防跨站请求伪造功能         2、即便settings中设置了全局中间件            from django.views.decorators.csrf import csrf_exempt, csrf_protect from django.utils.decorators import method_decoratormethod_decorator(csrf_exempt, namedispatch) class HomeView(View):def dispatch(self, request, *args, **kwargs):return super(HomeView, self).dispatch(request, *args, **kwargs)def get(self, request):return render(request, home.html)def post(self, request):print(Home View POST method...)return redirect(/index/)
http://www.zqtcl.cn/news/354113/

相关文章:

  • 高校网站建设研究意义餐饮vi设计案例
  • 触屏手机网站网站建设功能模块价格
  • 类似携程网的网站wordpress文章摘要调用
  • 好网站建设公司开发方案联盟营销的网络营销方式
  • logo免费生成网站洛阳网络建站公司
  • 建设工程部网站百度指数功能
  • 个人网站 商业时事新闻2022最新10月
  • 不会代码 怎么做网站网站视频管理系统
  • 网站空间 流量网上卡片制作
  • 网站排名seo软件机关网站源码
  • 网站手机端页面怎么做手机之家
  • 成都电子商务网站大庆城市投资建设网站
  • 电子商务网站费用wordpress 怎么手动更新
  • 中国空间站设计在轨飞行多少年南昌网站建设风格
  • 用php写的网站有哪些暖暖 视频 在线 观看 高清
  • 云空间网站怎么做海南旅游网网页制作
  • 常宁网站免费的ai作图软件
  • 网站建设讲师招聘如何做电商产品推广
  • 让百度收录网站网站开发流程进度表
  • 有几个网站能在百度做推广产品开发管理系统
  • 一个网站项目的价格表dz论坛seo
  • 企业做网站要多少钱哪个网站做动图
  • 知名企业网站例子4s店网站模板
  • 网站建设的信息安全防范技术初级买题做哪个网站好
  • 品牌营销网站建设东莞智通人才招聘网
  • 莒县建设局网站好的网站具备什么条件
  • 威海网站建设怎么样网上怎么推销自己的产品
  • 网站做SEO优化网站建设背景图片大小的修改
  • 看企业网站怎么做到百度秒收WordPress怎么可以上传图片
  • 欧洲手表网站简述jsp网站架构