最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Flask獲取請(qǐng)求參數(shù)的方式總結(jié)

 更新時(shí)間:2025年04月27日 10:45:56   作者:流煙默  
在 Flask 中,可以從 request 對(duì)象中獲取各種類型的參數(shù),這篇文章為大家整理了一些常見的獲取參數(shù)的方式及示例代碼,感興趣的小伙伴可以參考一下

在 Flask 中,可以從 request 對(duì)象中獲取各種類型的參數(shù)。以下是全面整理的獲取參數(shù)的方式及示例代碼。

1. 獲取 URL 查詢參數(shù)(Query String Parameters)

URL 中的查詢參數(shù)通過 ?key=value&key2=value2 的形式傳遞,使用 request.args 獲取。

示例:

from flask import Flask, request

app = Flask(__name__)

@app.route('/query')
def get_query_params():
    param1 = request.args.get('param1', default=None, type=str)  # 獲取單個(gè)參數(shù)
    param2 = request.args.getlist('param2')  # 獲取多個(gè)同名參數(shù)
    return f"param1: {param1}, param2: {param2}"

# 測(cè)試 URL: http://127.0.0.1:5000/query?param1=value1&param2=value2&param2=value3

2. 獲取表單數(shù)據(jù)(Form Data)

當(dāng)請(qǐng)求方法為 POST 或 PUT 時(shí),可以通過 request.form 獲取表單數(shù)據(jù)。

示例:

@app.route('/form', methods=['POST'])
def get_form_data():
    name = request.form.get('name', default=None, type=str)  # 獲取單個(gè)參數(shù)
    age = request.form.get('age', default=0, type=int)  # 獲取并轉(zhuǎn)換為整數(shù)
    return f"name: {name}, age: {age}"

# 測(cè)試:使用 Postman 或 curl 提交表單數(shù)據(jù)

3. 獲取 JSON 數(shù)據(jù)

當(dāng)客戶端發(fā)送 JSON 格式的數(shù)據(jù)時(shí),可以使用 request.json 獲取解析后的字典。

示例:

@app.route('/json', methods=['POST'])
def get_json_data():
    data = request.json  # 獲取 JSON 數(shù)據(jù)
    name = data.get('name', None)
    age = data.get('age', 0)
    return f"name: {name}, age: {age}"

# 測(cè)試:使用 Postman 或 curl 提交 JSON 數(shù)據(jù)
# 請(qǐng)求頭:Content-Type: application/json
# 請(qǐng)求體:{"name": "Alice", "age": 25}

4. 獲取文件上傳(File Uploads)

當(dāng)上傳文件時(shí),可以通過 request.files 獲取文件對(duì)象。

示例:

@app.route('/upload', methods=['POST'])
def upload_file():
    file = request.files.get('file')  # 獲取上傳的文件
    if file:
        filename = file.filename
        file.save(f"./{filename}")  # 保存文件到本地
        return f"File uploaded: {filename}"
    return "No file uploaded"

# 測(cè)試:使用 Postman 或 curl 提交文件

5. 獲取路徑參數(shù)(Route Parameters)

路徑參數(shù)是通過 URL 路徑定義的動(dòng)態(tài)部分,使用 <variable_name> 定義,并在函數(shù)中接收。

示例:

@app.route('/user/<username>')
def get_user(username):
    return f"Hello, {username}!"

# 測(cè)試 URL: http://127.0.0.1:5000/user/Alice

6. 獲取原始請(qǐng)求體(Raw Body)

如果需要直接獲取請(qǐng)求的原始內(nèi)容,可以使用 request.data 或 request.get_data()。

示例:

@app.route('/raw', methods=['POST'])
def get_raw_data():
    raw_data = request.data.decode('utf-8')  # 獲取并解碼原始數(shù)據(jù)
    return f"Received raw data: {raw_data}"

# 測(cè)試:提交任意格式的原始數(shù)據(jù)

7. 獲取 Headers

通過 request.headers 獲取請(qǐng)求頭信息。

示例:

@app.route('/headers')
def get_headers():
    user_agent = request.headers.get('User-Agent')  # 獲取 User-Agent
    host = request.headers.get('Host')  # 獲取 Host
    return f"User-Agent: {user_agent}, Host: {host}"

# 測(cè)試:訪問任意 URL

8. 獲取 Cookies

通過 request.cookies 獲取客戶端發(fā)送的 Cookie。

示例:

@app.route('/cookies')
def get_cookies():
    session_id = request.cookies.get('session_id', default=None)  # 獲取 Cookie
    return f"Session ID: {session_id}"

# 測(cè)試:設(shè)置 Cookie 并訪問

9. 獲取 Method 類型

通過 request.method 獲取當(dāng)前請(qǐng)求的方法類型(如 GET, POST 等)。

示例:

@app.route('/method', methods=['GET', 'POST'])
def get_method():
    return f"Request method: {request.method}"

# 測(cè)試:分別用 GET 和 POST 方法訪問

10. 獲取完整的 URL

通過 request.url 獲取完整的請(qǐng)求 URL。

示例:

@app.route('/url')
def get_full_url():
    return f"Full URL: {request.url}"

# 測(cè)試:訪問任意 URL

總結(jié)

方式使用場(chǎng)景屬性/方法
查詢參數(shù)URL 中的鍵值對(duì)request.args
表單數(shù)據(jù)HTML 表單提交request.form
JSON 數(shù)據(jù)客戶端發(fā)送 JSON 格式數(shù)據(jù)request.json
文件上傳文件上傳request.files
路徑參數(shù)動(dòng)態(tài)路由中的參數(shù)函數(shù)參數(shù)
原始請(qǐng)求體獲取未解析的請(qǐng)求體request.data
Headers獲取請(qǐng)求頭信息request.headers
Cookies獲取客戶端發(fā)送的 Cookierequest.cookies
Method 類型獲取請(qǐng)求方法類型request.method
完整 URL獲取完整的請(qǐng)求 URLrequest.url

以上方法涵蓋了 Flask 中從 request 對(duì)象獲取參數(shù)的主要方式,根據(jù)實(shí)際需求選擇合適的方式即可。

到此這篇關(guān)于使用Flask獲取請(qǐng)求參數(shù)的方式總結(jié)的文章就介紹到這了,更多相關(guān)Flask獲取請(qǐng)求參數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

石河子市| 红原县| 高平市| 铁岭县| 广汉市| 中江县| 余姚市| 宽城| 中牟县| 丽水市| 贵德县| 获嘉县| 筠连县| 白朗县| 台湾省| 汉沽区| 仙居县| 响水县| 苏州市| 兴宁市| 探索| 河西区| 高邑县| 阿城市| 陕西省| 佛山市| 五台县| 鄂伦春自治旗| 象山县| 开化县| 临城县| 桃园县| 出国| 朝阳区| 平乡县| 临洮县| 平阴县| 兴国县| 灵璧县| 锡林浩特市| 平阳县|