Created
February 21, 2012 11:50
-
-
Save mgallego/1876083 to your computer and use it in GitHub Desktop.
WebService Python
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env python | |
from twisted.web import server, resource | |
from twisted.internet import reactor | |
from twisted.python import log | |
import sys | |
from datetime import datetime | |
class Root(resource.Resource): | |
def render_GET(self, request): | |
return 'Welcome to Picmnt Api' | |
def getChild(self, name, request): | |
if name == '': | |
return self | |
else: | |
if name in VIEWS.keys(): | |
return resource.Resource.getChild(self, name, request) | |
else: | |
return PageNotFoundError() | |
class List(resource.Resource): | |
def render_GET(self, request): | |
return 'List' | |
class PageNotFoundError(resource.Resource): | |
def render_GET(self, request): | |
return 'Page not found' | |
VIEWS = { | |
'List': List() | |
} | |
if __name__ == '__main__': | |
log.startLogging(sys.stdout) | |
root = Root() | |
for viewName, className in VIEWS.items(): | |
root.putChild(viewName, className) | |
log.msg('Starting server: %s' %str(datetime.now())) | |
server = server.Site(root) | |
reactor.listenTCP(8080, server) | |
reactor.run() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment