我第二次 url 使用龙卷风时出现 404 错误。为什么会这样?
Having a 404 error on my second url using tornado. Why is this happening?
我刚刚开始使用 API 和龙卷风。在我的代码中添加第二个 class 并再次添加 运行 之后,我继续在控制台中收到此错误:
[Errno 48] Address already in use
并且在尝试访问我的第二个 url 时出现此错误:
tornado.web.HTTPError: HTTP 404: Not Found
我的代码是这样的:
from tornado.web import Application, RequestHandler
from tornado.ioloop import IOLoop
items=[]
class TodoItems(RequestHandler):
def get(self):
self.write({'items': items})
class TodoItem(RequestHandler):
def post(self):
items.append(self.request.body)
self.write({'message': self.request.body})
def make_app():
urls = ([("/", TodoItems),
("/api/item/", TodoItem)])
return Application(urls, debug=True)
if __name__ == '__main__':
app = make_app()
app.listen(3000)
IOLoop.current().start()
可能是什么问题?
我相信事实是您首先 运行 您的程序只有第一条路线,然后添加第二条路线。并想再次 运行 程序但忘记终止第一个程序。所以你得到 [Errno 48] Address already in use
因为第一个正在使用这个地址。这也是您获得 tornado.web.HTTPError: HTTP 404: Not Found
的原因,因为您使用的是 运行 旧版本。
我刚刚开始使用 API 和龙卷风。在我的代码中添加第二个 class 并再次添加 运行 之后,我继续在控制台中收到此错误:
[Errno 48] Address already in use
并且在尝试访问我的第二个 url 时出现此错误:
tornado.web.HTTPError: HTTP 404: Not Found
我的代码是这样的:
from tornado.web import Application, RequestHandler
from tornado.ioloop import IOLoop
items=[]
class TodoItems(RequestHandler):
def get(self):
self.write({'items': items})
class TodoItem(RequestHandler):
def post(self):
items.append(self.request.body)
self.write({'message': self.request.body})
def make_app():
urls = ([("/", TodoItems),
("/api/item/", TodoItem)])
return Application(urls, debug=True)
if __name__ == '__main__':
app = make_app()
app.listen(3000)
IOLoop.current().start()
可能是什么问题?
我相信事实是您首先 运行 您的程序只有第一条路线,然后添加第二条路线。并想再次 运行 程序但忘记终止第一个程序。所以你得到 [Errno 48] Address already in use
因为第一个正在使用这个地址。这也是您获得 tornado.web.HTTPError: HTTP 404: Not Found
的原因,因为您使用的是 运行 旧版本。