我正在尝试通过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/