python flask后端request获取参数的几种方式整理
最近用 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 常见属性

python flask后端request获取参数的几种方式整理的更多相关文章
- SpringMVC获取参数的几种方式
前言: 年末了,忙了一年了却发现系统的整理的东西很少,一些基础的东西都未做整理,这里就将它随便整理一下,增加一些印象,当然在网上看到一些好的资料也会整理下来以备后用.今天整理一下springMVC获取 ...
- struts2的action从request获取参数值的几种方式
使用jquery框架的ajax能够方便的向后台传递参数,以$.post为例,参数有2种方式字符串和键值对:$.post(url, "name=aty&age=25")和$. ...
- flask request 获取json内容2种方式
# -*- coding: utf-8 -*-from flask import request, jsonify, json, Moduleimport loggingfrom web.utils. ...
- Struts2获取参数的几种方式
Struts2由于是一个贴心的框架,所以获取参数这种体力活,就无需再通过原生的request来getParameter了,有如下几种方式进行获取 1.Action中属性驱动,必须提供与form表单na ...
- flask包request获取参数
原博文:https://www.cnblogs.com/wangjikun/p/6935592.html request.method #获取请求方法request.form #获取post请求所有参 ...
- Request获取Session的两种方式
1.无请求参数 public HttpSession getSession() 获取当前request关联的session,如果当前request没有session,创建一个session. 2.有请 ...
- python编写的banner获取代码的两种方式
1.无选项和帮助信息 #!/usr/bin/env python #coding:utf-8 import socket import sys import os from threading imp ...
- python中os模块获取路径的几种方式
一.代码 import os BASE_DIR = os.path.abspath(os.path.join(os.path.dirname(__file__), "..")) p ...
- spring mvc获取路径参数的几种方式 - 浅夏的个人空间 - 开源中国社区
body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...
- java动态获取WebService的两种方式(复杂参数类型)
java动态获取WebService的两种方式(复杂参数类型) 第一种: @Override public OrderSearchListRes searchOrderList(Order_Fligh ...
随机推荐
- 【JUC】交换器Exchanger详解
欢迎关注专栏[JAVA并发] 前言 JDK中提供了不少的同步工具,现在分享一个相对比较冷门的同步工具--交换器(Exchanger).你知道Exchanger的作用是什么吗?实现机制是什么?可以用来做 ...
- Python数据类型+运算符
Python基础数据类型 上期练习讲解 # 练习一.想办法打印出jason l1 = [11, 22, 'kevin', ['tony', 'jerry', [123, 456, 'jason'] ] ...
- MySQL存储 pymysql模块
目录 pymysql模块 基本使用 cursor=pymysql.cursors.DictCursor 获取数据 fetchall 移动光标 scroll 增删改二次确认 commit autocom ...
- 一次SQL调优 聊一聊 SQLSERVER 数据页
一:背景 1.讲故事 最近给一位朋友做 SQL 慢语句 优化,花了些时间调优,遗憾的是 SQLSERVER 非源码公开,玩起来不是那么顺利,不过从这次经历中我觉得明年的一个重大任务就是好好研究一下它, ...
- [python] 基于matplotlib实现圆环图的绘制
圆环图本质上是一个中间切出一块区域的饼状图.可以使用python和matplotlib库来实现.本文主要介绍基于matplotlib实现圆环图.本文所有代码见:Python-Study-Notes # ...
- Kubernetes 部署 - DevOps CI/CD详细指南
什么是Kubernetes部署? 在此文章中,我们将探索Kubernetes(K8s),结合DigitalOcean Kubernetes集群与Buddy自动化运维系统部署以达到以下列出的目标: 使 ...
- mysql 1366 - Incorrect string value
mysql 插入中文时报错 mysql 1366 - Incorrect string value... 这是由于 数据库 / 表 / 表字段 编码格式未设置好造成的 解决办法: 1.查看编码是否符 ...
- SpringBoot 项目中配置多个 Jackson 的 ObjectMapper ,以及配置遇到的坑
目录 问题说明 原因排查分析 结论总结 Jackson 自动装配分析 问题说明 我们都知道,SpringBoot 项目中,如果引入了 Jackson 的包,哪怕不配置,SpringBoot 也会帮我们 ...
- angular + ng-zorro 表格后台分页及排序功能实现,angular + ng-zorro 表格排序不起作用解决办法
angular + ng-zorro 表格排序不起作用是因为数据是从后端获取的,也是后端分页,所以要自己写排序啦~~~~ 举例:HTML <nz-table #basicTable nzBord ...
- Java微服务随机掉线排查思路
背景 我们的业务共使用11台(阿里云)服务器,使用SpringcloudAlibaba构建微服务集群,共计60个微服务,全部注册在同一个Nacos集群 流量转发路径: nginx->spring ...