twiste 内建了WEB server。

from twisted.internet import  selectreactor
selectreactor.install()
from twisted.internet import reactor
from twisted.internet import defer
from twisted.internet.task import deferLater
from twisted.web import server,resource
from twisted.web.server import NOT_DONE_YET

# -------------------------------------------------------------------------

def sleep(seconds):
a=deferLater(reactor,seconds,lambda:True)
return a
class FirstApi(resource.Resource):
"统计First Api"
isLeaf = True
@defer.inlineCallbacks
def _delay_get_data(self, request):
yield sleep(1)
defer.returnValue(("test",request))
def _delay_Render(self,args):
data=args[0]
request=args[1]
request.write(data)
request.finish()
def render_GET(self, request):
d=self._delay_get_data(request)
d.addCallback(self._delay_Render)
return NOT_DONE_YET


class Urls(resource.Resource):
"Url配置及主项目函数"
def __init__(self):
resource.Resource.__init__(self)
self.putChild("",self)
self.putChild("test",FirstApi())
def render_GET(self,request):
return "home page"
reactor.listenTCP(8080,server.Site(Urls()))
reactor.run()
posted on 2016-08-08 15:45  wolover  阅读(174)  评论(0编辑  收藏  举报