這幾天有一個構建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