zoukankan      html  css  js  c++  java
  • django(二)中间件与面向切面编程

     一、中间件概念    

          django 自带函数可以在几个环节调节收到请求、处理请求、处理异常、以及发送请求。

          看这里给的链接好了,这是一个大佬的讲django中间件的博客,非常清楚:https://www.cnblogs.com/zhaof/p/6281541.html

          接下,我讲讲我使用的代码:

    二、中间件示例

           

        1、先在应用下的目录(如上图),创建中间件文件“MyException.py”, 输入以下内容

    from django.http import HttpResponse
    
    #a middleware
    class MyException(object):
        def __init__(self, get_response):
            self.get_response = get_response
    
        def __call__(self, request):
            return self.get_response(request)
    
        def process_exception(request, response, exception):
            return HttpResponse("This is an exception!")

         2、在主应用文件的Setting.py 的 "MIDDLEWARE " 中加入上面的文件名(得包括文件路径):booktest.MyException.MyException

                 

       

        3、在应用的 view 文件中加入,这是一个会抛出异常的逻辑:

    #create the middleware
    def myExp(request):
        a1 = int('abc')
        return HttpResponse('hello')

        4、在应用的 url 文件中加入:

      url(r'^myexp/$', views.myExp)

    三、运行应用,然后在浏览器访问该地址:http://127.0.0.1:8000/booktest/myexp/

           由于抛出异常,会得到如图

          

         这就是上面中间件文件定义的时候,抛出的异常的信息。

         完成了。

         

  • 相关阅读:
    第三章 套接字编程简介
    Effective STL 学习关于容器
    C++单例模板
    第六章 IO复用:select和poll函数
    第五章 TCP客户服务器程序示例
    八、基本UDP套接字编程
    第四章 基本TCP套接字编程
    测试 LaTeX
    如何在不支持 LaTeX 的环境使用 LaTeX 命令输入公式?
    Ubuntu 下 Wine 安装微软 Office
  • 原文地址:https://www.cnblogs.com/Jomini/p/8583253.html
Copyright © 2011-2022 走看看