zoukankan      html  css  js  c++  java
  • Django 拦截器

    创建拦截器后,所有通信都会先走拦截器,然后再去访问urls

    django中拦截器的创建

    #### setting 中配置
    MIDDLEWARE_CLASSES = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
    'documents.myMiddleware.FilterMiddleware', # 配置拦截器路径
    ]

    #### myMiddleware 拦截器文件
    # -*- coding: utf-8 -*-

    from django.http import HttpResponseRedirect,HttpResponse

    from django.shortcuts import render
    try:
    from django.utils.deprecation import MiddlewareMixin # Django 1.10.x
    except ImportError:
    MiddlewareMixin = object # Django 1.4.x - Django 1.9.x



    class FilterMiddleware(MiddlewareMixin):
    def process_request(self, request):
    print request.path
    # 填上所有不拦截的一级路由
    if request.path.startswith("/xxx") == True or request.path.startswith("/xxx") == True or request.path.startswith("/xxx") == True or request.path.startswith("/xxx") == True or request.path.startswith("/xxx") == True or request.path.startswith("/xxx") == True or request.path.startswith("/xxx") == True:
    pass
    else:
    # return HttpResponse("404")
    return render(request, "xxx/xxx/404.html")
  • 相关阅读:
    docker数据卷
    docker容器的启动、停止、运行、导入、导出、删除
    docker镜像的获取、创建、修改、删除、导入操作
    docker使用-spark安装
    python爬虫-3 解析库
    python爬虫-2 requests使用
    NLP-HMM
    NLP-中文分词-预处理
    python爬虫-1环境安装
    学习笔记3
  • 原文地址:https://www.cnblogs.com/yanruizhe/p/15150853.html
Copyright © 2011-2022 走看看