我刚开始使用API和龙卷风。在向我的代码添加第二个类并再次运行它之后,我继续在控制台中收到此错误:
[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
的原因。