使用web.py需要定义对外公布的服务路径,大致如下。
urls = (
"/tasks/?", "signin",
"/tasks/list", "listing",
"/tasks/post", "post",
"/tasks/chgpass", "chgpass",
"/tasks/act", "actions",
"/tasks/logout", "logout",
"/tasks/signup", "signup"
)
Web.py通过元组保存【路径】,【处理器】对应关系。
1.路径
路径支持正则表达式/(test1|test2),则对/test1和/test2都会由同一个处理器进行处理。同事web.py匹配路径是依赖路径的,即
http://localhost/myapp/greetings/hello?name=Joe
只会匹配http://localhost/myapp/greetings/hello路径。web.py会对路径加上$所以/test/不会匹配/test
。
2.参数获取
1)路径上参数获取
路径上参数获取,如url=/test/(.*),请求路径/test/11。这种情况下可以在处理器方法上增加参数得到如。
def GET(self,params):
print params
return ....
上述params会得到11的值
2)通过?key=value方式请求,获取其中的参数
针对1中代码示例name=Joe的参数获取,可以使用web.input()
获取所有参数信息:
def GET(selft):
data=web.input()
print data.key1,data.key2
input()可以对某个参数进行默认值,data=web.input(key='default value')