【发布时间】:2021-07-21 15:02:32
【问题描述】:
我正在构建一个烧瓶 webapp,它通过 http 请求与另一个应用程序通信。所以我正在尝试对 httpClient 对象使用依赖注入。
这是代码
class HttpClient(object):
def __init__(self, host):
self.host = host
self.httpclient = 3partyModule.connect(url=host,
verbose=False,
max_greenlets=1)
def configure(binder):
binder.bind(HttpClient, to=HttpClient, scope=singleton)
if __name__ == '__main__':
app = Flask(__name__)
FlaskInjector(app=app, modules=[configure])
app.run()
当我运行应用程序时,我收到以下错误 -
发生异常:RuntimeError
在请求上下文之外工作。
这通常意味着您尝试使用所需的功能
一个活动的 HTTP 请求。请参阅有关测试的文档
有关如何避免此问题的信息。
我已尝试对此进行查找,但找不到任何有用的线索。 感谢是否有人可以在这里阐明这个问题。
提前谢谢你。
软件包版本:
烧瓶==2.0.1
烧瓶注射器==0.12.3
Python==3.8
【问题讨论】:
-
你能在
3partyModule中显示导入吗? -
here 是我用来获取连接对象的第三方类“InferenceServerClient”。
3partyModule.connect(url, verbose, max_greenlets) == InferenceServerClient(url, verbose, max_greenlets)
标签: python-3.x flask dependency-injection flask-injector