flask通过表单自动产生get请求的参数、form表单实现POST请求的自动提交

通过表单自动产生get请求的参数

相关代码如下:

import flaskapp = flask.Flask(__name__)@app.route('/')
def login():html = '''<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>flask表单实现get数据拼接</title></head><body><form action="#" method="get">user <input type="text" name="user"/> </br>sex <input type="radio" name="sex" value="male"> 男<input type="radio" name = "sex" value="female"> 女</br><input type="submit" value="提交"></form></body></html>'''return htmlif __name__ == '__main__':app.run(debug=True)

执行结果如下:

在这里插入图片描述
提交后数据在服务端接收到的数据
在这里插入图片描述
key是:user、sex
对应的value是:姓名、male/female
在这里插入图片描述
还可以通过flask.request.values.get(‘key’,‘’)来获取对应的数据,执行结果如下
在这里插入图片描述

form表单实现POST请求的自动提交

post请求和get请求的区别是在method方法上把get改成post即可
在这里插入图片描述
关于路由方式需要调整的说明

import flaskapp = flask.Flask(__name__)# Method Not Allowed
# The method is not allowed for the requested URL.
# 报错提示是说路由不允许提交get请求,需要调整路由,加上method,需要把get和post都加上,
# 因为第一次没有点击表单时候是get请求,提交的时候才是post请求,所以需要两者都支持
@app.route('/', methods=['GET', 'POST'])
def login():html = '''<!DOCTYPE html><html lang="en" xmlns="http://www.w3.org/1999/html"><head><meta charset="UTF-8"><title>表单实现get数据拼接</title></head><body><form action="#" method="post">user <input type="text" name="user"/> <br />sex <input type="radio" name="sex" value="male"/> 男<input type="radio" name="sex" value="female"/> 女<br /><input type="submit" value="提交"></form></body></html>'''user = flask.request.values.get("user",'')sex = flask.request.values.get("sex",'')return html +f'<div>您输入的数据为:{user = }, {sex = }</div>'if __name__ == '__main__':app.run(debug=True)

调整后重启测试
在这里插入图片描述
这时候可以通过检查通过“载荷/负载”这里看到传输的参数,这时候在请求路径里面已经看不到参数了,相对于get请求来说更加安全一点儿
在这里插入图片描述

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

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

相关文章

《情感反诈模拟器》2025学习版

1.2 专业内容支持 67篇情感诈骗案例研究14万字心理学分析资料783条专业配音对白 二、安装与运行 2.1 系统要求 最低配置&#xff1a; 显卡&#xff1a;GTX 1060CPU&#xff1a;i5-8400存储&#xff1a;25GB空间 2.2 运行步骤 解压游戏文件&#xff08;21.7GB&#xff09;…

预训练 vs. 微调:大模型落地的核心两步,究竟有何不同?

在人工智能领域&#xff0c;尤其是自然语言处理&#xff08;NLP&#xff09;和计算机视觉&#xff08;CV&#xff09;&#xff0c;大型模型如GPT系列、BERT、Stable Diffusion等取得了令人瞩目的成就。支撑这些模型广泛应用的关键技术流程&#xff0c;通常包含两个核心阶段&…

微信原生小程序转uniapp过程及错误总结

https://ask.dcloud.net.cn/article/35786 此文章尤为重要&#xff0c;可以使用辅助工具 1、this.setData 源代码&#xff1a; this.setData({dateTime: obj.dateTime, });需更换为 this.dateTime obj.dateTime2、cookie问题 在此文章有解释 https://blog.csdn.net/ni155…

关于Spring JBDC

一、什么是Spring JDBC&#xff1f; 什么是JDBC&#xff1f; JDBC&#xff08;Java Database Connectivity&#xff09;是 Java 语言访问数据库的标准 API&#xff0c;它定义了一组接口和类&#xff0c;允许 Java 程序与各种数据库进行交互。JDBC 提供了执行 SQL 语句、处理结果…

【SpringBoot】Spring Boot实现SSE实时推送实战

以下是一个完整的基于 Spring Boot 的 Server-Sent Events (SSE) 示例&#xff0c;包括服务端和客户端的实现。 一、服务端实现 1. 创建 Spring Boot 项目 首先&#xff0c;创建一个基本的 Spring Boot 项目&#xff0c;并添加 spring-boot-starter-web 依赖。在 pom.xml 中…

若依导出模板时设置动态excel下拉框(表连接的)

若依导出模板时设置动态excel下拉框&#xff08;表连接的&#xff09; 一、问题二、解决1、实体类2.1、临时使用2.2、统一工具类3、调用 一、问题 若依导出只能&#xff1b;使用dictType、combo、comboReadDict、readConverterExp这些来控制字典的导出下拉&#xff0c;如果不是…

Rabbitmq集成springboot 使用死信队列

一、何为死信队列 RabbitMQ的死信队列&#xff08;Dead Letter Queue&#xff0c;DLQ&#xff09;是一种特殊的队列机制&#xff0c;用于处理那些无法被正常消费的消息。这些消息可能由于各种原因无法被消费者正确处理&#xff0c;如果不加以处理&#xff0c;可能会导致队列堵塞…

Spring Boot 项目中 resources 文件读取

开发必备&#xff01;Spring Boot 项目中 resources 文件读取的 9 大方案详解 在 Spring Boot 项目中&#xff0c;resources 目录承载着大量的关键资源&#xff0c;如配置文件、模板文件、脚本资源、数据文件等。而如何以合适的方式高效、安全地读取这些资源&#xff0c;往往是…

力扣-1143.最长公共子序列

题目描述 给定两个字符串 text1 和 text2&#xff0c;返回这两个字符串的最长 公共子序列 的长度。如果不存在 公共子序列 &#xff0c;返回 0 。 一个字符串的 子序列 是指这样一个新的字符串&#xff1a;它是由原字符串在不改变字符的相对顺序的情况下删除某些字符&#xf…

《算法笔记》之二(笔记)

1. vector&#xff1a; 1.定义&#xff1a;“变长数组”&#xff08;长度依据需要而自动改变&#xff0c;节省空间&#xff0c;避免普通数组超内存&#xff09; 代码定义&#xff1a;vector < typename > name; 注&#xff1a;&#xff08;注意理解&#xff09; vecto…

PROFIBUS DP 转 EtherCAT 网关:冶金自动化高效协同的基石

在冶金行业高炉、连铸、轧钢等复杂场景中&#xff0c;生产设备往往跨越不同时代。许多关键产线仍依赖西门子PLC为核心的PROFIBUS DP网络&#xff0c;而新型伺服驱动器、机器人手臂则普遍采用高性能EtherCAT接口。如何实现新旧系统的无缝集成&#xff1f;JH-PB-ECT疆鸿智能PROFI…

开发云数据库

1、云数据库概述 云数据库是一款端云协同的数据库产品&#xff0c;是AGC云开发&#xff08;AGC Serverless&#xff09;关键服务之一&#xff0c;为AGC构建了MBaas&#xff08;Mobile Backend as a Service&#xff0c;移动后端即服务&#xff09;能力。云数据库提供了端云数据…

IEEE使用遇到的问题

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、如何在已知期刊中查找自己方向的论文 前言 IEEE 使用相关问题记录 一、如何在已知期刊中查找自己方向的论文 比如在IEEE Transactions on Visualization …

深入解析C#数组协变与克隆机制

—— 值类型与引用类型的内存行为差异 &#x1f50d; 一、数组协变&#xff08;Array Covariance&#xff09; 核心条件&#xff1a; 仅适用于引用类型数组被赋值对象与数组基类型需存在隐式/显式转换关系 class Animal {} class Dog : Animal {}Animal[] animals new Dog…

零散问题一

1.函数重载的原理 名称修饰&#xff08;Name Mangling&#xff09; 作用&#xff1a;编译器在编译时对函数名进行编码&#xff0c;生成唯一的内部标识符&#xff0c;使得同名函数能通过参数列表的差异被区分。示例&#xff1a; void func(int a); // 修饰后可能为 _Z4funcivo…

React Native【详解】内置 API

屏幕 Dimensions 获取屏幕信息 import { Dimensions } from "react-native"; export default function demo() {const { width, height, scale, fontScale } Dimensions.get("window");console.log(width, height, scale, fontScale); }参数为 window 时…

Selenium自动化测试常见的异常处理

在软件开发和测试领域,Selenium作为一种广泛使用的自动化测试工具,扮演着至关重要的角色。随着自动化测试的不断普及,如何在测试过程中有效捕获并处理异常,成为了每个测试工程师必须掌握的技能。本文旨在深入探讨Selenium异常处理的方法,通过丰富的案例和代码,帮助新手朋…

企业级安全实践:SSL 加密与权限管理(二)

权限管理&#xff1a;企业数据的守护者 权限管理的基本概念与重要性 权限管理&#xff0c;是指根据系统设置的安全规则或策略&#xff0c;用户可以访问且仅能访问自己被授权的资源&#xff0c;不多不少 。它是企业信息安全体系的重要组成部分&#xff0c;旨在确保只有授权的人…

AMAT P5000 CVDFDT CVDMAINT Precision 5000 Mark 操作 电气原理 PCB图 电路图等

AMAT P5000 CVDFDT CVDMAINT Precision 5000 Mark 操作 电气原理 PCB图 电路图等

深入浅出:语言模型中的“自回归生成”是什么?

在当今大语言模型&#xff08;LLM&#xff09;如 ChatGPT、GPT-4、文心一言、通义千问等风靡的时代&#xff0c;“自回归生成”是驱动它们流畅对话、创作文本的核心引擎。 理解它是深入掌握LLM工作原理的关键一步。本文将用清晰易懂的语言&#xff0c;结合实例&#xff0c;为你…