激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

腳本之家,腳本語言編程技術(shù)及教程分享平臺!
分類導(dǎo)航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務(wù)器之家 - 腳本之家 - Python - Flask request 對象介紹

Flask request 對象介紹

2022-03-08 00:03tigeriaf Python

本文介紹 Flask request 對象,一個完整的 HTTP 請求,包括客戶端向服務(wù)端發(fā)送的Request 請求和服務(wù)器端發(fā)送 Response 響應(yīng).為了能方便訪問獲取請求及響應(yīng)報文信息,Flask 框架提供了一些內(nèi)建對象,下面就來說一下 Flask 針對請求提供內(nèi)建對象

前言:

一個完整的 HTTP 請求,包括客戶端向服務(wù)端發(fā)送的 Request 請求和服務(wù)器端發(fā)送的 Response 響應(yīng)。為了能方便的訪問獲取請求及響應(yīng)報文信息,Flask 框架提供了一些內(nèi)建對象,下面就來說一下 Flask 針對請求提供的內(nèi)建對象request

1、request請求對象

request請求對象封裝了從客戶端發(fā)來的請求報文信息,我們能從request對象上獲取請求報文中的所有數(shù)據(jù)。 其大部分功能是由依賴包Werkzeug完成的,Flask 做了一些特定功能的封裝,形成了request請求對象。

1.1request請求對象的使用

 導(dǎo)入flask包中的request對象,就可以直接在請求函數(shù)中使用該對象了。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
from flask import request
 
@app.route('/user', methods=['GET', 'POST'])
 
def user():
 
    if request.method == 'POST':
 
        user_name = request.form['user_name']
 
        return 'user :{} add success!'.format(user_name)
 
 
 
    else:
 
        user_id = request.args.get('user_id', 0)
 
        return 'Hello user:{}!'.format(user_id)

上述代碼中:request對象中的method變量可以獲取當前請求的方法,即GET、POST、PUT、DELETE等;form變量獲取POST請求form-data表單中的數(shù)據(jù),本質(zhì)是一個字典,如果提交的表單中沒有user_name,則會返回 400 Bad Request 的錯誤,當然也可以使用異常捕獲機制處理。request.args.get()方法獲取的是GET請求的url中的參數(shù)(問號?之后的部分),第一個參數(shù)指定獲取的 url 參數(shù)的 key,第二個參數(shù)指定默認值,當 key 不存在時,則返回默認值。

如下:

GET請求

Flask request 對象介紹

POST請求

Flask request 對象介紹

除此之外,請求報文中的其他信息都可以通過 request 對象提供的屬性和方法獲取,常用的部分如下:

  • url:請求的 url
  • args:WerkzeugImmutableMultiDict 對象,存儲解析后的查詢字符串,可通過字典方式獲取鍵值
  • blueprint:當前藍本的名稱
  • cookies:一個包含所有隨請求提交的 cookies 的字典
  • data:包含字符串形式的請求數(shù)據(jù)
  • endpoint:于當前請求相匹配的端點值
  • files:Werkzeug MultiDict 對象,包含所有上傳文件
  • form:Werkzeug ImmutableMultiDict 對象,包含解析后的表單數(shù)據(jù)
  • values:WerkzeugCombinedMultiDict 對象,結(jié)合了 args form 屬性的值
  • get_data(cache=True,as_text=False,parse_from_data=False):獲取請求中的數(shù)據(jù),默認讀取為字節(jié)字符串(bytestring),as_text為True則返回解碼后的unicode字符串
  • get_json(self,force=False,silent=False,cache=True):作為 json 解析并返回數(shù)據(jù),如果 MIME 類型不是 json,返回 None(除非 force 設(shè)為 True);解析出錯則拋出Werkzeug提供的 BadRequest 異常(如果未開啟調(diào)試模式,則返回400錯誤響應(yīng)),如果 silent 設(shè)為 True 則返回 None;cache 設(shè)置是否緩存解析后的 json 數(shù)據(jù)
  • headers:WerkzeugEnvironHeaders 對象,包含請求的頭部字段
  • json:包含解析后的 json 數(shù)據(jù),內(nèi)部調(diào)用 get_json(),可通過字典的方式獲取鍵值
  • method:請求的 HTTP 方法
  • referrer:請求發(fā)起的源 url,即 referer
  • scheme:請求的URL模式(http 或 https)
  • user_agent:用戶代理(User Agent),包含了用戶的客戶端類型,操作系統(tǒng)類型等信息

到此這篇關(guān)于 Flask  request 對象詳情的文章就介紹到這了,更多相關(guān) Flask  request 對象內(nèi)容請搜索服務(wù)器之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持服務(wù)器之家!

原文鏈接:https://juejin.cn/post/7030009163803525133

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: lutube成人福利在线观看 | 在线播放一级片 | 国产中出在线观看 | 在线免费观看精品 | 妇女毛片| 91精品国产网站 | 性爱视频在线免费 | 在线香蕉视频 | 日韩大片在线永久观看视频网站免费 | 久久亚洲美女视频 | 国产又粗又爽又深的免费视频 | 92看片淫黄大片欧美看国产片 | 久章草在线视频 | 九色中文字幕 | 国产一级毛片高清视频 | 欧洲精品久久久 | 久久综合伊人 | 一级黄色淫片 | 鲁丝一区二区二区四区 | av之家在线观看 | 色妇视频| 91精品老司机 | 中文字幕激情 | 久久精品性视频 | 美女一级视频 | 中文字幕在线观看1 | 99精品在线观看 | 日韩区在线 | 在线观看免费视频麻豆 | 久久aⅴ国产欧美74aaa | av色偷偷 | 欧美特一级 | 成人羞羞视频在线观看免费 | 国产在线精品一区二区三区 | 被啪羞羞视频在线观看 | 亚洲最黄视频 | 久久蜜臀一区二区三区av | 免费看一区二区三区 | 国产精品99久久久久久大便 | 免费看欧美一级特黄a大片 久久免费视频一区二区三区 | 免费播放av |