Request對(duì)象屬性
self.request.method http的請(qǐng)求頭;get, post等
self.reuqest.uri 客戶端請(qǐng)求完整的uri
self.request.path uri的路徑名,不包含查詢的字符串
self.request.query uri中的查詢字符串
self.request.version http/1.1
self.request.headers 請(qǐng)求頭
self.requset.body 字符串的消息
self.request.remote_ip 客戶端請(qǐng)求的ip
self.request.protocol http的協(xié)議http or https
self.request.host 請(qǐng)求消息的主機(jī)名
self.request.files 以字典的方式表達(dá)客戶端上傳的文件;
self.request.cookies 客戶端的cookies字典
self.request.arguments 客戶端提交的參數(shù)
Response:
self.write將字典轉(zhuǎn)換為json字符串之外,將Content-Type設(shè)置為application/json; charset=UTF-8。
set_default_headers()進(jìn)入HTTP處理方法前先被調(diào)用,預(yù)先設(shè)置默認(rèn)的headers。注意:set_header()方法會(huì)覆蓋掉在set_default_headers()方法中設(shè)置的同名header。
self.set_status(status_code, reason=None)設(shè)置響應(yīng)狀態(tài)碼
self.redirect:跳轉(zhuǎn)
self.send_error(status_code=500, **kwargs):發(fā)送錯(cuò)誤消息
self.write_error(status_code, **kwargs):寫錯(cuò)誤碼
on_finish()請(qǐng)求處理結(jié)束后調(diào)用 用來進(jìn)行資源清理釋放或處理日志等
獲取客戶端遠(yuǎn)程ip另一種方法:
x_real_ip = self.request.headers.get("X-Real-IP")
remote_ip = x_real_ip