Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django如何保证中间件';是否只调用一次s___;u init____;u?_Python_Django_Middleware_Django Middleware - Fatal编程技术网

Python Django如何保证中间件';是否只调用一次s___;u init____;u?

Python Django如何保证中间件';是否只调用一次s___;u init____;u?,python,django,middleware,django-middleware,Python,Django,Middleware,Django Middleware,Django的文件: class WSGIHandler(base.BaseHandler): # ... def __call__(self, environ, start_response): # ... if self._request_middleware is None: self.load_middleware() 与每个请求调用一次的process_*方法不同,\uuuu init\uuu仅在Web服务器响应第一个请求时调用一次 Djang

Django的文件:

class WSGIHandler(base.BaseHandler):
  # ...
  def __call__(self, environ, start_response):
    # ...
    if self._request_middleware is None:
        self.load_middleware()
与每个请求调用一次的process_*方法不同,
\uuuu init\uuu
仅在Web服务器响应第一个请求时调用一次


Django如何保证中间件对象只初始化一次?Web服务器可以启动多个python解释器实例来处理请求,对吗?

这意味着每个解释器实例一次。注意执行情况:

class WSGIHandler(base.BaseHandler):
  # ...
  def __call__(self, environ, start_response):
    # ...
    if self._request_middleware is None:
        self.load_middleware()

您可以阅读和(特别是
Basehandler.load\u middleware
)了解更多详细信息。

我想这意味着每个解释器实例一次。