0

我正在尝试运行一个简单的服务器

from klein import Klein

app = Klein()

@app.route("/")
def hello(request):
    return "Hello World!"

if __name__ == "__main__":
    run("localhost", 8080)

我使用 Zappa 将其打包并上传到 AWS Lambda,悬停在调用端点后我得到了这个,知道为什么吗?

"{'message': 'An uncaught exception happened while servicing this request. You can investigate this with the `zappa tail` command.', 'traceback': ['Traceback (most recent call last):\\n', '  File \"/var/task/handler.py\", line 452, in handler\\n    response = Response.from_app(self.wsgi_app, environ)\\n', '  File \"/var/task/werkzeug/wrappers.py\", line 939, in from_app\\n    return cls(*_run_wsgi_app(app, environ, buffered))\\n', '  File \"/var/task/werkzeug/test.py\", line 923, in run_wsgi_app\\n    app_rv = app(environ, start_response)\\n', '  File \"/var/task/zappa/middleware.py\", line 70, in __call__\\n    response = self.application(environ, encode_response)\\n', \"TypeError: 'Klein' object is not callable\\n\"]}"
4

1 回答 1

0

它不能调用对象Klein()。您需要将其添加到 virtualenv 才能导入它,因为只有 virtualenv 是使用 zappa 构建和部署的。

例如,您可以创建一个 setup.py 脚本,该脚本允许使用 pip 将您的自定义代码安装到您的虚拟环境中,如下所述:https ://docs.python.org/3/distutils/setupscript.html

于 2019-06-17T14:47:17.550 回答