[flask]http请求//获取请求体数据

news2024/10/10 19:17:26
import json

from flask import Flask, request

app = Flask(__name__)

@app.route("/form1", methods=["post"])
def form1():
    """
    获取客户端请求的请求体[表单]
    :return:
    """
    """
    获取表单数据
    请求url:
    """
    """获取表单数据[不包含上传文件]"""
    #print(request.form)
    # # ImmutableMultiDict([('username', 'root'), ('password', '123456'), ('fav', 'swimming'), ('fav', 'watch TV')])
    # # 获取表单项数据[单个值]
    #print(request.form.get("username")) # root
    # # 获取表单项数据[多个值]
    #print(request.form.getlist("fav"))  # ['swimming', 'watch TV']


    """获取表单数据的上传文件"""
    #print(request.form.get("username"))
    # # 获取所有上传文件
    #print(request.files)  # ImmutableMultiDict([('avatar', <FileStorage: 's.png' ('image/png')>)])
    # # 根据name值获取单个上传文件
    #print(request.files.get("pt"))  # <FileStorage: 's.png' ('image/png')>
    # # 根据name值获取多个上传文件
    #print(request.files.getlist("pt"))  # [<FileStorage: 'a.png' ('image/png')>, <FileStorage: 's.png' ('image/png')>]

    return "hello, flask"


@app.route("/data", methods=["post"])
def data():
    """
    获取客户端请求的请求体[ajax]
    :return:
    """
    """判断本次客户端是否是ajax请求获取本次客户端提交的数据格式是否是json"""
    print(request.is_json)

    """获取客户端请求体中的json数据"""
    print(request.json)  # {'username': 'root', 'password': '123456'}

    """获取客户端请求体的原始数据"""
    print(request.data)  # b'{\n  "username": "root",\n  "password": "123456"\n}'
    # 原始数据转json格式
    print(json.loads(request.data))  # {'username': 'root', 'password': '123456'}

    """接收其他格式类型的数据"""
    # print(request.data)

    return "hello, flask"


@app.route("/file", methods=["post", "put", "patch"])
def file():
    """
    接收上传文件并保存文件
    :return:
    """
    pt = request.files.get("pt")
    print(pt)
    # 调用FileStorage提供的save方法就可以保存文件了
    pt.save("./avatar.png")
    #文件会保存在代码路径下
    return "hello, flask"


if __name__ == '__main__':
    app.run(host="0.0.0.0", port=5000, debug=True)

表单数据上传/不包含文件

表单数据上传/包含文件

左边目录可看到多了一个文件

客户端请求体数据//  右边的数据类型记得设置为json

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1554031.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【mysql】centos7安装mysql8

目录 1. 下载安装包2. 解压tar包3. 安装4. 查看安装完成后的安装包5. 初始化mysql6. MySQL设置 1. 下载安装包 1.官网地址2.mysql-8.0.35-1.el7.x86_64.rpm-bundle.tar3.放到服务器的目录&#xff08;这里是/opt/mysql&#xff09; 2. 解压tar包 1.tar -xvf 可以解压tar.xz后…

批量下载网页文章软件大全

在信息爆炸的时代&#xff0c;网络上充斥着海量的文章和内容&#xff0c;有时我们希望能够批量下载网页上的文章&#xff0c;以便离线阅读或进行进一步处理。为了满足这一需求&#xff0c;出现了许多网页文章批量下载工具&#xff0c;它们能够帮助用户快速、方便地获取网页上的…

【IC前端虚拟项目】write_path子模块DS与RTL编码

【IC前端虚拟项目】数据搬运指令处理模块前端实现虚拟项目说明-CSDN博客 read_path的代码完成之后,就可以开始整个项目里复杂度最高、bug最多、时序收敛最为困难的模块——write_path的开发了!我自己写过两次这个虚拟项目,每次都是在这里耗时最久,所以大家也可以挑战一下自…

使用AOP实现打印日志

首先创建annotation.SystemLog类&#xff1a; package com.gjh.annotation;import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target;Target(ElementType.METHOD…

蓝桥杯-卡片换位

solution 有一个测试点没有空格&#xff0c;要特别处理&#xff0c;否则会有一个测试点运行错误&#xff01; 还有输入数据的规模在变&#xff0c;小心顺手敲错了边界条件 #include<iostream> #include<string> #include<queue> #include<map> #incl…

JS new Array.fill(new Array()) 创建二维数组 fill方法的坑

我们通常会通过如下方式来创建一个二维数据&#xff1a; const arr new Array(5).fill(new Array(2).fill(0))我们如果想要修改其中一个元素的值 arr[0][0] 1输出&#xff1a;   我们只想给arr[0][0]赋值&#xff0c;但是每一行数组为0的下标元素的值全部改变了&#xf…

Mysql-实战数据备份与恢复

文章目录 备份类型备份内容备份工具mysqldump备份 实战案例&#xff1a;恢复误删除的表准备工作2:30完全备份完全备份后更新数据表10:00误删students表需要恢复还原的状态开始还原恢复 为什么要备份&#xff1f; 备份是为了&#xff1a;灾难恢复&#xff1a;硬件故障、软件故障…

基于springboot实现房屋租赁系统项目【项目源码+论文说明】计算机毕业设计

基于springboot实现房屋租赁系统演示 摘要 社会的发展和科学技术的进步&#xff0c;互联网技术越来越受欢迎。网络计算机的生活方式逐渐受到广大人民群众的喜爱&#xff0c;也逐渐进入了每个用户的使用。互联网具有便利性&#xff0c;速度快&#xff0c;效率高&#xff0c;成本…

转型数据报表开发:奥威BI学习网站如何助你一臂之力?

介绍&#xff1a;奥威BI是一款商业智能工具&#xff0c;专为中国企业设计&#xff0c;提供数据可视化分析功能。以下是关于奥威BI的一些详细信息&#xff1a; 自助式敏捷BI分析&#xff1a;用户可以通过简单的操作&#xff0c;如拖拉拽&#xff0c;制作出炫酷的可视化报表。这种…

前端超分辨率技术应用:图像质量提升与场景实践探索-设计篇

超分辨率&#xff01; 引言 在数字化时代&#xff0c;图像质量对于用户体验的重要性不言而喻。随着显示技术的飞速发展&#xff0c;尤其是移动终端视网膜屏幕的广泛应用&#xff0c;用户对高分辨率、高质量图像的需求日益增长。然而&#xff0c;受限于网络流量、存储空间和图像…

【软件安装】(十四)Ubuntu22.04安装Psensor硬件监视器

一个愿意伫立在巨人肩膀上的农民...... Ubuntu系统硬件运行查询输入指令太繁琐&#xff0c;终端展示不直观&#xff0c;因此这款具有可视化监控Ubuntu系统下当前电脑的硬件CPU&#xff08;中央处理器&#xff09;、GPU&#xff08;显卡&#xff09;和硬盘等温度等功能&#xff…

HCIP(DSVPN)实验

HCIP&#xff08;DSVPN&#xff09;实验 一&#xff0c;实验要求&#xff1a; 1、r5为isp&#xff0c;只能进行ip地址的配置&#xff0c;其所有ip地址均为共有ip地址 2、r1和r5使用ppp的PAP认证&#xff0c;r5为主认证方 r2和r5之间使用ppp的chap认证&#xff0c;r5为主认证方…

vue基础教程(4)——十分钟吃透vue路由router

同学们可以私信我加入学习群&#xff01; 正文开始 前言一、路由概念二、路由使用三、创建路由对应的组件四、给整个项目一个入口总结 前言 前面的文章运行成功后&#xff0c;页面显示如下&#xff1a; 在这个页面中&#xff0c;点击Home和About都会切换右面的页面内容&#…

HTML网站的概念

目录 前言&#xff1a; 1.什么是网页&#xff1a; 2.什么是网站&#xff1a; 示例&#xff1a; 3.服务器&#xff1a; 总结&#xff1a; 前言&#xff1a; HTML也称Hyper Text Markup Language&#xff0c;意思是超文本标记语言&#xff0c;同时HTML也是前端的基础&…

python实战之PyQt5桌面软件

一. 演示效果 二. 准备工作 1. 使用pip 下载所需包 pyqt5 2. 下载可视化UI工具 QT Designer 链接&#xff1a;https://pan.baidu.com/s/1ic4S3ocEF90Y4L1GqYHPPA?pwdywct 提取码&#xff1a;ywct 3. 可视化UI工具汉化 把上面的链接打开, 里面有安装和汉化包, 前面的路径还要看…

小白python爬虫基础教程(看这一篇就完了)

爬虫的五个步骤&#xff1a; 1&#xff09;需求分析&#xff0c;找到需求相关的网址 2&#xff09;获取网址的返回信息&#xff08;urllib,requests&#xff09; 3&#xff09;定位需要的信息所在位置&#xff08;re正则表达式,XPATH, CSS selector&#xff09; 4&#xff…

开通幻兽帕鲁游戏多人联机服务器多少钱?价格意想不到

2024年全网最全的幻兽帕鲁服务器租用价格表&#xff0c;阿里云幻兽帕鲁游戏服务器26元1个月、腾讯云32元一个月、京东云26元一个月、华为云24元1个月&#xff0c;阿腾云atengyun.com整理最新幻兽帕鲁专用4核16G、8核16G、8核32G游戏服务器租用价格表大全&#xff1a; 阿里云幻…

在微信上处理小程序用户反馈具体的方法

想必大家在开发小程序的时候&#xff0c;一定遇到这种情况&#xff1a; 为了用户有更好的体验&#xff0c;我们会定期登陆微信小程序来查看用户反馈并对用户的问题进行回复和处理&#xff0c;但是这种方法的缺点就是最多间隔48小时要进行登陆一次以及回复用户不及时。 这样的话…

codesys通过moudbus TCP连接西门子1214c,西门子做客户端

思路在codesys中发送数据到西门子&#xff0c;西门子原封不动的将数据传回。 1.首先配置codesys; 我设置了500个&#xff0c;但是好像发不这么多&#xff0c;只能120多个。因为什么来我忘了。但是这里不影响。 2.配置映射&#xff1a; 3.写代码 PROGRAM PLC_PRG VARarySendDa…

大模型助力学术图谱挖掘!OAG-Challenge @ KDD Cup 2024正式开始

如何用大模型推动学术知识图谱挖掘任务&#xff1f;OAG-Challenge KDD Cup 2024 邀你来赛&#xff01; 竞赛网址&#xff1a;https://www.biendata.xyz/kdd2024/ 竞赛背景 自 1997 年创办以来&#xff0c;知识发现和数据挖掘会议 ACM SIGKDD 上举办的 KDD Cup 被誉为全球最…