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

湛江门户网站对比色网站设计

湛江门户网站,对比色网站设计,阜阳市城乡建设局网站,汕头最新消息今天【1】中间件 中间件是什么#xff1f; 中间件顾名思义#xff0c;是介于request与response处理之间的一道处理过程#xff0c;相对比较轻量级#xff0c;并且在全局上改变django的输入与输出。因为改变的是全局#xff0c;所以需要谨慎实用#xff0c;用不好会影响到性能…【1】中间件 中间件是什么         中间件顾名思义是介于request与response处理之间的一道处理过程相对比较轻量级并且在全局上改变django的输入与输出。因为改变的是全局所以需要谨慎实用用不好会影响到性能   作用         1 、全局的请求拦截---》如果它没有登录---》就不允许访问         2、 拦截所有请求获取请求的ip地址         3、 记录所有用户的访问日志         4、 统一在响应头中加数据 【1.1】中间件方法 # 1、 process_request(self,request) # 请求来了就会走# 2、 process_response(self, request, response) # 请求走了就会走# 3、 process_view(self, request, callback, callback_args, callback_kwargs) #视图函数执行之前调用# 4、 process_template_response(self,request,response) # 渲染模板之前会走# 5、 process_exception(self, request, exception) # 视图函数中出现异常了才执行 【1.2】django内置中间件 django内置一些中间件---》增强了djagno的功能 request.session request.user post 请求提交数据拦截了---》csrf认证MIDDLEWARE [django.middleware.security.SecurityMiddleware,# session相关的中间件django.contrib.sessions.middleware.SessionMiddleware,# 公共中间件---》访问不带 / 路径如果有 带 / 的路径他会让你重定向到这个地址django.middleware.common.CommonMiddleware,# csrf认证 xss corsdjango.middleware.csrf.CsrfViewMiddleware,# 认证request.user---这个中间件做的django.contrib.auth.middleware.AuthenticationMiddleware,# django的消息框架---》flask--》闪现django.contrib.messages.middleware.MessageMiddleware,django.middleware.clickjacking.XFrameOptionsMiddleware, ] 【1.3】自定义中间件 # 自定义中间件来使用记录用户的请求地址和user-agent class SaveRemoteAddr(MiddlewareMixin):def process_request(self, request):# request 是WSGIRequest 的对象# print(request.session) # 一定要保证session的中间件要在上面# 这个request 就是当次请求的request# 取出ipip request.META.get(REMOTE_ADDR)user_agent request.META.get(HTTP_USER_AGENT)print(ip)print(user_agent)# return HttpResponse(不让你看了) # 不会再走视图函数了能返回的情况1 None,表示执行完这个代码继续往后执行---》还有中间件继续执行--》最后进视图函数2 四件套后续不走了中间件的process_response---》直接返回给浏览器了 【1.4】中间件在响应头加入访问时间 import datetime class AddHeaderMiddleWare(MiddlewareMixin):def process_response(self, request, response):# request中有没有session 有# request 如果在视图函数中往request中放了值在这里就可以取出来 request.xxx# print(request.xxx)# 所有cookie中都带# response.set_cookie(xxxxx, asdfds)# 写入到响应头,访问服务端的时间response[ttt] datetime.datetime.now()return response # 一定要返回response对象 【2】csrf认证相关 1、csef跨站请求伪造   2、攻击原理             -在同一个浏览器中如果登录了A网站没有退出在B网站中向A网站发送请求浏览器会自动携带A网站的cookie对于A网站后端来讲 它就分辨不清到底是用户真实发的请求还是黑客网站发的请求【都会携带用户真实的cookie】       3、如何防范          # 如何防范-django解决了这个问题---》只要发送post请求必须携带一个csrf_token 随机字符串---后端给的-这个随机字符串可以带的位置1 请求体中urlencodedform-data{csrfmiddlewaretokenasdfasdf}2 放在请求头中X-CSRFToken:asdfasdfasd3 ajax提交数据默认是urlencoded放在请求体中没有任何问题$.ajax({method: post,data: {username, password, csrfmiddlewaretoken},success: function (res) {console.log(res)}})4 ajax提交使用json格式---》就不能放在请求体中只能放在请求头中$.ajax({method: post,headers:{X-CSRFToken:csrfmiddlewaretoken},contentType: application/json,data: JSON.stringify({username, password}),success: function (res) {console.log(res)}})# post 提交的数据都是从request.POST中取前提是必须是urlencoded和form-data格式 # 如果是json是取不到的# 如果使用ajax发送请求redirect render就用不了了尽量使用JsonResponse
http://www.pierceye.com/news/926175/

相关文章:

  • 婚恋网站翻译可以做吗科技局网站建设方案
  • 长沙哪里学网站建设德阳做网站的公司
  • 制作短链接网站做抽奖网站违法吗
  • 网站备案每年审吗做网站做推广
  • 网站名称 规则个人网页模板背景
  • 网站制作方案策划简历网站建设咨询有客诚信网站建设咨询
  • 格尔木市住房和城乡建设局网站能看全景的地图软件
  • 一站式网站建设与运营wordpress后台代码修改
  • 企业品牌类网站有哪些做网站建设的公司是什么类型
  • 自己制作的网站怎么做分页2022建站市场
  • 网贷审核网站怎么做wordpress 文章列表页
  • 搬家网站建设公司西安是哪个省市
  • php 网站 整合 数据库智能建站系统个人网站
  • 福田区罗湖区宝安区龙华区seo上首页排名
  • 网站建设业务员提成企业网站 需求
  • 做淘宝客网站 首选霍常亮国外网页设计
  • 天津小型企业网站设计方案网页升级访问每天自动更新 下载
  • 好的学习网站打广告壹搜网站建设优化排名
  • 响应式设计 手机网站手机自己制作app软件
  • 东方头条网站源码杭州正晖建设工程有限公司网站
  • 阿里巴巴网站建设与维护深圳民治网站建设
  • 郑州短视频代运营seo外链是什么
  • 网站建设公司 经营资质wordpress文学
  • 手机网站建设请示常州建设网站公司哪家好
  • 网站开发报价ppt重庆沙坪坝有哪些大学
  • 牛商网做的包装盒网站怎么在门户网站上发布
  • 北京网络公司建站成品app直播源码下载
  • 帮忙建站的公司百度收录好的网站排名
  • 芯火信息做网站怎么样郑州网站建设老牌公司
  • 龙华营销型网站建设在线生成短链接网址