此样本代码 4-6 dynamic_dispatch.py 启动服务器并快速关闭它。
This sampel code 4-6 dynamic_dispatch.py starts a server and quickly shuts it down.
这应该在端口 10310 上创建一个日历服务器。遗憾的是代码运行并快速退出,没有错误。可能是什么问题?根据我正在阅读的扭曲的 O'reily 书,我应该能够去 localhost:10310/2013 并查看一个小日历。
from twisted.internet import reactor
from twisted.web.resource import Resource, NoResource
from twisted.web.server import Site
from calendar import calendar
class YearPage(Resource):
def __init__(self, year):
Resource.__init__(self)
self.year = year
def render_GET(self, request):
return "<html><body><pre>%s</pre></body></html>" % (calendar(self.year),)
class CalendarHome(Resource):
def getChild(self, name, request):
if name == '':
return self
if name.isdigit():
return YearPage(int(name))
else:
return NoResource()
def render_GET(self, request):
return "<html><body>Welcome to the calendar server!</body></html>"
print("pop")
root = CalendarHome()
factory = Site(root)
reactor.listenTCP(10310, factory)
reactor.run
感谢您的反馈。
reactor.run
应该是 reactor.run()
。例如,参见 this page。
reactor.run
是一个函数,而reactor.run()
调用函数。
这应该在端口 10310 上创建一个日历服务器。遗憾的是代码运行并快速退出,没有错误。可能是什么问题?根据我正在阅读的扭曲的 O'reily 书,我应该能够去 localhost:10310/2013 并查看一个小日历。
from twisted.internet import reactor
from twisted.web.resource import Resource, NoResource
from twisted.web.server import Site
from calendar import calendar
class YearPage(Resource):
def __init__(self, year):
Resource.__init__(self)
self.year = year
def render_GET(self, request):
return "<html><body><pre>%s</pre></body></html>" % (calendar(self.year),)
class CalendarHome(Resource):
def getChild(self, name, request):
if name == '':
return self
if name.isdigit():
return YearPage(int(name))
else:
return NoResource()
def render_GET(self, request):
return "<html><body>Welcome to the calendar server!</body></html>"
print("pop")
root = CalendarHome()
factory = Site(root)
reactor.listenTCP(10310, factory)
reactor.run
感谢您的反馈。
reactor.run
应该是 reactor.run()
。例如,参见 this page。
reactor.run
是一个函数,而reactor.run()
调用函数。