我正在尝试将Flask服务器包装在一个类中,以便更好地适合我的其余应用程序的结构。
我有以下代码:
class HTTPServer(object):
def __init__(self):
self.app = Flask(__name__)
self.app.add_url_rule('/', 'index', self.hello_world, methods=['POST'])
self.app.run(port=5050, use_reloader=False)
def hello_world(self, data):
print "Hello, World: {}".format(data)
但是,如果我向POST
发送localhost:5050/index
请求,则会收到404错误。
烧瓶日志显示以下内容:
127.0.0.1 - - [30/Aug/2019 11:17:52] "POST /index HTTP/1.1" 404 -
如果我在['POST']
中将['GET']
更改为methods
并发送GET
请求,也会发生同样的情况。
但是,如果我从methods
中完全删除了add_url_rule()
参数,我可以发送GET
请求,并且它们会得到适当处理。
答案 0 :(得分:0)
我不了解endpoint
的{{1}}参数。它不是客户端看到的端点,而是端点的内部名称。正确的方法调用是:
add_url_rule