正在看Nova API的代码, 仿照其中的REST 实现写了一个程序.
Nova API 当然支持了更多的功能, 例如XML/JSON序列化, 身份验证等等. 这个测试程序只实现其中的REST功能
MyRouter: 负责把HTTP请求, 根据匹配规则, 分发到不同的Application中
1) [ Python Deploy ] 收到HTTP请求后, 先调用 MyRouter的 __call__方法进行处理
2) [ MyRouter ] 根据内部的匹配定义, 通过RouteMiddleware 分发到对应的 MyApplication
MyApplication: 收到HTTP 请求后, 解析其中的参数信息, 调用后台的MyController业务类的对应方法
MyController: 最终的业务类, 接受参数, 执行业务逻辑的操作.
from __future__ import print_function
from routes import Mapper
import webob.dec
import webob.exc
import routes.middleware
import testtools
class MyController(object):
def getlist(self, mykey):
print("step 4: MyController's getlist(self, mykey) is invoked")
return "getlist(), mykey=" + mykey
class MyApplication(object):
"""Test applic