一个Google App Engine的请求分派框架

时间: 2010-01-26 / 分类: WEB开发, 未分类 / 浏览次数: 22 views / 0个评论 发表评论

作了一个APPENGINE的请求分派框架
这样就可以将不同的请求分派到不同的类里面去了。
很容易修改与维护

#encoding=UTF-8
import wsgiref.handlers
import os

from os import environ
from google.appengine.ext import webapp
from google.appengine.ext import db
from google.appengine.ext.webapp import template

from appengine_utilities.sessions import Session

import User
import PhoneBook

class MainPage(webapp.RequestHandler):
tpath = os.path.dirname(__file__)
def get(self):
    self.response.out.write(template.render(os.path.dirname(__file__) + "/template/index.html",{'register': '/user?act=register', 'login': '/user?act=login'}))

def post(self):
    self.response.out.write('Hello, webapp World! Post')
class UnaryPage(webapp.RequestHandler):
    def get(self, module):
      s = Session()
      if module == "user":
        user = User(self, "get", s)
      if module == "phonebook":
        phonebook = PhoneBook(self, "get", s)
    def post(self, module):
      s = Session()
      if module == "user":
        user = User(self, 'post', s)
      if module == "phonebook":
        phonebook = PhoneBook(self, "post", s)

class BinaryPage(webapp.RequestHandler):
    def get(self, module, act):
      return
    def post(self, module, act):
      return
class TernaryPage(webapp.RequestHandler):
    def get(self, module, act, param):
      return
    def post(self):
      return
def main():
application = webapp.WSGIApplication(
    [
    ('/', MainPage),
    ('/(.*)/(.*)/(.*)', MainPage.TernaryPage),
    ('/(.*)/(.*)', MainPage.BinaryPage),
    ('/(.*)', MainPage.UnaryPage),
    ],
      debug=True)
wsgiref.handlers.CGIHandler().run(application)

if __name__ == "__main__":
main()

发表评论

您的昵称 *

您的邮箱 *

您的网站