web.py使用要点
这几天有一个构建restful services的需求,我采用了web.py,之前并没有使用过,但在使用中确实给我带来了很多惊喜。当然,最大的惊喜就是简单,方便。之前开发restful服务的时候,采用java的框架restlet,当时觉得就很方便,很轻量级了。但是用了web.py之后,才发现,开发可以如此之轻。 为了迎合python的特点,在介绍web.py的时候,以罗列要点的方式进行,我会在自己不断学习使用的过程中,不断丰富这个列表:
- 在web.py中,url后有无"/"是不一样的
- 静态文件不需要写url-class映射,只需要放在static目录中
- 使用web.seeother和web.redirect完成跳转。前者更加友好,返回303状态码,而后者返回301
- 使用子应用更清晰的构建应用的逻辑:逻辑部分,UI部分等
- 返回xml或者json等格式数据时,需要在web.header中设置数据的格式
- 通过web.input获取url中的参数
- 通过web.data获取post请求参数
- 使用web.ctx获取客户端信息
- 可以在程序启动的时候,添加参数,修改默认8080端口python server.py 8010
- 通过使用mimerender,是web.py返回json、xml、text以及html等格式。mimerender采用python的描述符的方式完成的
写了一些,发现web.py的cookbook内容不错,也有中文版,见引用。不过,我还是会继续总结上面的点,我喜欢这种形式。 【引用】
http://webpy.org/cookbook/index.zh-cn