網站首頁 編程語言 正文
最近用?flask 寫后端,將獲取訪問參數的幾種方式總結整理一下,僅供參考
從?postman 上來看,調用后端接口傳參的方式有兩種,一種是 params,參數是以?a=x&b=y 的形式顯示在 url 中訪問的。還有一種是 body,參數以請求體的形式訪問后端,不會直接顯示出來。在用這兩種傳參方式訪問后端,后端接收參數的常見的三種方式分別是
r1 = request.form.get('key')
r2 = request.args.get('key')
r3 = request.values.get('key')
當參數以?params 形式傳遞時,后端只能通過 request.args.get('key') 和 request.values.get('key') 來接收參數,通過 request.form.get('key') 是無法接收參數的,
如下圖
當參數以?body 中 form-data 或x-www-form-urlendoded形式傳遞時,后端只能通過 request.values.get('key') 和 request.form.get('key') 來接收參數,通過 request.args.get('key') 是無法接收參數的,
如下圖
通過以上可知,以?params 形式或 body(form-data、x-www-form-urlendoded)形式傳參,均可以 request.values 獲取參數。
若通過?form-data 上傳文件時,則需通過 request.files.get('key_file') 來獲取文件,如下圖
若以?body 中的 raw(json)形式傳參,則需要通過 get_json() 或 get_data() 方法獲取參數,以 get_data() 獲得的參數需要再次轉成 json,所以推薦直接使用 get_json(),如下圖
PS:request 還有很多其他屬性,可以獲取不同的值,如 headers,cookies,method 等,下圖附上 request 常見屬性
原文鏈接:https://www.cnblogs.com/zy0209/p/15923572.html
相關推薦
- 2022-02-22 SWT線程訪問無效:org.eclipse.swt.SWTException: Invalid th
- 2021-11-06 Linux?遠程管理及sshd服務驗證知識點詳解_Linux
- 2022-05-02 Entity?Framework中執行sql語句_實用技巧
- 2022-05-22 vscode調試container中的程序的方法步驟_相關技巧
- 2022-08-10 C#中通過Command模式實現Redo/Undo方案_C#教程
- 2021-12-07 C語言SetConsoleTextAttribute函數使用方法_C 語言
- 2023-01-13 python中的txt文件轉換為XML_python
- 2022-04-07 對WPF中Expander控件美化_實用技巧
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支