Falcon(Waitress)教程模块对象不可调用

时间:2018-07-27 17:36:00

标签: windows falconframework waitress

所以我正在通过venv在Windows 10上浏览猎鹰教程

falcon==1.4.1
waitress==1.1.0

用户指南进展顺利,但提供了:

httpd = simple_server.make_server('127.0.0.1', 8000, app)
httpd.serve_forever()

本教程目前可用于两个文件:

resource.py

    import json
    import falcon

    class Resource(object):
        def on_get(self, req, resp):
            doc = {
                'images': [
                    {
                        'href': '/images/1eaf6ef1-7f2d-4ecc-a8d5-6e8adba7cc0e.png'
                    }
                ]
            }
            resp.body = json.dumps(doc, ensure_ascii=False)
            resp.status = falcon.HTTP_200

app.py

import falcon
from .images import Resource
api = application = falcon.API()
images = Resource()
api.add_route('/images', images)

女服务生的发起人

waitress-serve --port=8000 look:app

请求

http localhost:8000/images

错误响应

  

ERROR:waitress:提供/ images Traceback时发生异常(最新   最后调用):文件   “ c:\ users \ ivan \ dev \ py \ projects \ falcon \ look.venv \ lib \ site-packages \ waitress \ channel.py”,   338号线,服务中       task.service()文件“ c:\ users \ ivan \ dev \ py \ pys \ projects \ falcon \ look.venv \ lib \ site-packages \ waitress \ task.py”,   169号线,服务中       self.execute()文件“ c:\ users \ ivan \ dev \ py \ projects \ falcon \ look.venv \ lib \ site-packages \ waitress \ task.py”,   执行中的第399行       app_iter = self.channel.server.application(env,start_response)TypeError:“模块”对象不可调用

任何想法/建议如何克服这个问题?

1 个答案:

答案 0 :(得分:3)

发现一个问题,falcon框架中的教程使用侍应生命令将其弄错了。

这是相关的github issue

命令应为:

waitress-serve --port=8000 look.app:api