它以一种智能的方法来实现,以致一个应用可以调用另一个应用而不会中断
所以这对你意味着什么呢?
除非你是在做一些类似单元测试的事情,否则基本上你可以完全忽略这种情况。你会发现依赖于请求对象的代码会突然中断,因为没有请求对象
解决方案就是自己创建一个请求并把它跟上下文绑定
针对单元测试最早的解决方案是使用 test_request_context()
上下文管理器。结合 with
声明,它将绑定一个测试请求来进行交互。这里是一个例子:
from flask import request
with app.test_request_context(‘/hello’, method=‘POST’):
现在你可以做出请求,比如基本的断言
assert request.path == ‘/hello’
assert request.method == ‘POST’
另一个可能性就是传入整个 WSGI 环境到request_context()
方法:
from flask import request
with app.request_context(environ):
assert request.method == ‘POST’
参考链接:
===================================================================
当前请求的方法可以用