我正在尝试通过Google Cloud的App Engine标准部署基于Quart的python应用程序。但是,我不断收到以下错误:

Traceback (most recent call last):
  File "/env/lib/python3.7/site-packages/gunicorn/workers/gthread.py", line 284, in handle
    keepalive = self.handle_request(req, conn)
  File "/env/lib/python3.7/site-packages/gunicorn/workers/gthread.py", line 333, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
TypeError: __call__() missing 1 required positional argument: 'send'


我知道Quart是ASGI解决方案,而Google App Engine是无服务器设置。将quart部署到AWS Lambda的建议之一是使用Magnum。这对Google Cloud App Engine也适用吗?

任何帮助,将不胜感激。

最佳答案

https://github.com/pgjones/quart/issues/68


  Quart是一个ASGI框架,而不是WSGI框架,这意味着它无法与无服务器一起使用。它可以与Mangum一起使用,这是无服务器的ASGI替代品。


这也意味着Quart将与App Engine,Cloud Functions等不兼容。

但是,它可以通过支持ASGI的HTTP服务器(例如Cloud Run)与Uvicorn一起很好地工作。

关于python - 在Google App Engine中部署Quart Python应用程序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59276760/

10-13 03:23