flask实现get和post请求

news/2024/4/27 15:20:04/文章来源:https://blog.csdn.net/javascript_good/article/details/131729289

1、实现get请求

在项目根目录创建app.py
代码如下:

from flask import Flask,render_template,requestapp = Flask(__name__)@app.route("/regist/user/", methods=['GET'])
def regist():return render_template("regist.html")   #默认去templates找文件@app.route("/do/regist/")
def do_regist():#1、接收用户通过GET提交的数据#2、处理注册的业务逻辑#3、返回数据print(request.args)return "注册成功"if __name__ == '__main__':app.run()

在跟目录创建一个templates目录,在该目录下创建regist.html文件
文件内容如下:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>用户注册</title>
</head>
<body>
<form method="get" action="/do/regist"><div>用户名: <input type="text" name="user"></div><div>密码: <input type="password" name="pwd"></div><div><input type="submit" value="submit提交"></div></form>
</body>
</html>

页面上的数据,想要提交到后台:
form标签包裹要提交的数据的标签

  • 提交方式: method= " get"
  • 提交的地址: action=" /do/regist“。 提交到/do/regist,所以需要实现/do/regist这个路由,在这里面可以处理注册的业务逻辑,比如将用户信息存放到文件或是存入到数据库
  • 在form标签里面必须有一个submit标签。·

在form里面的一些标签: input/select/textareal
一定要写name 属性

运行效果:
在这里插入图片描述
在这里插入图片描述get 请求的参数在url中显示
在这里插入图片描述
可以看到后台有收到传入的参数

2、实现post请求

在项目根目录创建app.py
需要写一个post请求的处理方法,代码如下:

from flask import Flask,render_template,requestapp = Flask(__name__)@app.route("/regist/user/", methods=['GET'])
def regist():return render_template("regist.html")@app.route("/post/regist/", methods=['POST'])
def post_regist():#1、接收用户通过POST提交的数据#2、处理注册的业务逻辑,比如将数据存储到数据库中#3、返回数据,这个是flask提供的方法,request.form返回所有表单数据print(request.form)return "注册成功"if __name__ == '__main__':app.run()

regist.html 文件内容如下:
方法修改为post

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>用户注册</title>
</head>
<body>
<form method="post" action="/post/regist"><div>用户名: <input type="text" name="user"></div><div>密码: <input type="password" name="pwd"></div><div><input type="submit" value="submit提交"></div></form>
</body>
</html>

运行结果:
在这里插入图片描述
在这里插入图片描述
post请求的参数不会显示在url 中

在这里插入图片描述
在后台可以看到已经接受到数据。

上面注册功能请求页面的方法和处理post请求的是分开的,其实可以合并到一起的:
合并后如下面:

from flask import Flask,render_template,requestapp = Flask(__name__)@app.route("/regist/user/", methods=['GET','POST'])
def regist():if request.method == 'GET':return render_template("regist.html")else:# 1、接收用户通过POST提交的数据# 2、处理注册的业务逻辑# 3、返回数据#也可以分开获取每个字段的值user = request.form.get('user')pwd = request.form.get('pwd')print(user,pwd)return "注册成功"
if __name__ == '__main__':app.run()

regist/user 这个方法可以支持get和post ,对方法进行判断,如果是get 请求就直接返回regist.html的html页面;如果是post方法就是执行下面的获取表单数据。

regist.html页面也要改提交的地址

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>用户注册</title>
</head>
<body>
<form method="post" action="/regist/user/"><div>用户名: <input type="text" name="user"></div><div>密码: <input type="password" name="pwd"></div><div><input type="submit" value="submit提交"></div></form>
</body>
</html>

这样运行的效果是一样的。

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

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

相关文章

玩转数据可视化之R语言ggplot2:(十四)层级布局(一层一层增加你的绘图元素,使绘图更灵活)

【R语言数据科学可视化篇】 🌸个人主页:JOJO数据科学📝个人介绍:统计学top3高校统计学硕士在读💌如果文章对你有帮助,欢迎✌关注、👍点赞、✌收藏、👍订阅专栏✨本文收录于【R语言数据科学】本系列主要介绍R语言在数据科学领域的应用包括: R语言编程基础、R语言可…

H3C-Cloud Lab-实验-DHCP实验

实验拓扑图&#xff1a; 实验需求&#xff1a; 1、按照图示为R1配置IP地址 2、配置R1为DHCP服务器&#xff0c;提供服务的地址池为192.168.1.0/24网段&#xff0c;网关为192.168.1.254&#xff0c;DNS服务器地址为202.103.24.68&#xff0c;202.103.0.117 3、192.168.1.10-1…

地平线旭日x3派40pin引脚控制,点亮小灯,控制舵机

地平线旭日x3派40pin引脚控制&#xff0c;点亮小灯&#xff0c;控制舵机 引脚对照表点亮RGB小灯安装旭日X3派WiringPi使用WiringPi点亮RGB小灯使用软件PWM功能 官方用户手册中只有python控制教程&#xff0c;没有c语言控制教程。且官方的教程中并没有软件pwm功能。本教程在开发…

【Android Framework系列】第5章 AMS启动流程

1 AMS简介 AMS&#xff08;Activity Manager Service&#xff09;是Android中最核心的服务&#xff0c;管理着四大组件的启动、切换、调度及应用进程的管理和调度等工作。AndroidQ将Activity移到了ActivityTaskManagerService中&#xff0c;但也和AMS相关联。 AMS通过使用一些…

arcgis拓扑检查

不能有悬挂点 不能有伪结点***路网处理很重要&#xff0c;看研究吧。 一直默认到最后。 导入要素类&#xff0c;单个 toupu2右键新建拓扑&#xff08;T&#xff09; 一般选不能有悬挂点&#xff0c;不能重叠。 一路默认 是 拉进图层可视化 线要素的话记得添加字段length&#…

element中icon字体图标的使用

效果图 官方提供的图标 icon字体图标 安装 安装依赖 cnpm install element-plus/icons-vue 编写src/plugins/icons.js import * as components from "element-plus/icons-vue";export default {install: (app) > {for (const key in components) {const comp…

PADS Logic怎么显示与隐藏元件的管脚编号和管脚名称

在绘制原理图元件的时候&#xff0c;有时管脚数量过多&#xff0c;管脚编号会显的特别密。既可以选择隐藏管脚编号&#xff0c;显示主要目的就是分辨出信号管脚。 第一步&#xff1a;在创建元件界面&#xff0c;执行菜单命令设置-显示颜色&#xff0c;如图1所示 图1 显示颜色选…

Next.js框架入门笔记

内置组件 ‘pages/_document.js’ 文件&#xff0c;自定义document DOC&#xff1a; https://www.nextjs.cn/docs/advanced-features/custom-document <Head>组件 <Head>是一个内置在 Next.js 中的 React 组件。它允许您修改页面的<head>。 Docs: https:/…

报错400是什么怎么解决呢?

首先要了解400错误是什么错误&#xff1a; HTTP状态码400表示"错误请求"。它是一种客户端错误状态码&#xff0c;表示服务器无法理解请求的语法或参数。当服务器收到一个无效的请求时&#xff0c;通常会返回400错误码。这可能是由于请求中缺少必要的参数、参数格式错…

关于AWS MSK Connector Execution Role的解释

尽管在创建AWS MSK Connector时&#xff0c;Execution Role是一个必填项&#xff0c;就像下面这样&#xff1a; 并且在官方文档中给出的Execution Role样例&#xff1a; https://docs.aws.amazon.com/msk/latest/developerguide/msk-connect-service-execution-role.html 中也…

linux X系统 X窗口系统(X Window System)

Xorg是一个开放源代码的跨平台的图形系统&#xff0c;它是UNIX和Linux的主要图形系统&#xff0c;它的前身是XFree86。 Xorg是在桌面环境中提供显示和图形输入设备支持的主要架构。 它支持多种输入设备&#xff0c;如键盘&#xff0c;鼠标&#xff0c;触摸屏&#xff0c;手写板…

电能管理系统在路店上的应用 安科瑞 许敏

摘要&#xff1a;随着企业改革的不断深入&#xff0c;对现代化用电管理的水平要求越来越高&#xff0c;准确、快速、经济的获得用电回路的各类数据进行用电分析、负荷管理、表计运行状况监测、电费自动结算的基础。同时也是提高企业经济效益的有效手段。近年来技术人员对监控系…

「解决方案」如何通过WiFi蓝牙二合一模块实现智能控制-工业控制

在物联网急速发展的现今&#xff0c;智能家居&#xff0c;智慧工业场景主流的智能控制方案多依赖于wifi技术&#xff0c;蓝牙技术来实现。而蓝牙-Wifi双模SOC方案&#xff0c;凭借集成wifi、蓝牙技术的低功耗、低成本&#xff0c;配网成功率高等特点&#xff0c;也在物联网智能…

24种人格力量,好奇心的力量以及特征分析

人格力量是一种可支配的价值观&#xff0c;它能让人向往美好的远景&#xff0c;极大地促进人的工作发展。via认为好奇心是人格力量的种类之一。 借助via 24种人格力量测试&#xff0c;探索人格优势&#xff0c;可以帮助我们更好的发现自身的优势&#xff0c;发挥自己的潜能。从…

REMB-接收端最大接收码率评估

draft-alvestrand-rmcat-remb-03 接收方带宽估计的RTCP消息 REMB_fanyamin的博客-CSDN博客 webrtc中的码率控制_webrtc设置码率_linux_vae的博客-CSDN博客 参考&#xff1a; Walter: WebRTC 拥塞控制之 REMB - 接收方带宽估计 - 简书 WebRTC基于TransportCC和Trendline Fil…

[java安全]URLDNS

文章目录 [java安全]URLDNS前言HashMapURLURLStreamHandler调用过程调用链流程图POC [java安全]URLDNS 前言 URLDNS利用链是一条很简单的链子&#xff0c;可以用来查看java反序列化是否存在反序列化漏洞&#xff0c;如果存在&#xff0c;就会触发dns查询请求 它有如下优点&a…

探索Python异常:让程序不再崩溃!

文章目录 前言什么是异常捕获异常基本语法捕获指定类型异常捕获多个指定类型的异常捕获异常描述信息捕获所有异常elsefinally 异常的嵌套自定义异常结语 前言 在编程的世界中&#xff0c;我们常常会面对各种各样的错误和异常情况。尤其当我们使用Python这样的高级编程语言时&a…

MySQL [环境配置]

MySQL [环境配置] MySQL的下载sqlyog的下载 熟悉老陈的人, 都清楚我不喜欢写这些环境配置的博客 那为啥这次要写一下MySQL的环境配置呢? 因为我被这一个小小的环境配置困扰了很长时间, 淋过雨的人都想为别人撑一把伞, 我不希望我的铁汁们也被这个问题困扰 MySQL的下载 MySQL下…

使用git克隆非自己账号的项目

在地址的中https://或者http://后添加要使用的 账号名项目地址&#xff0c;就会提示输入对应账号的密码&#xff0c;进行克隆。 如果克隆别人的项目&#xff0c;你将别人给你的项目地址克隆&#xff0c;此时身份验证是别人的用户名&#xff0c;这时你输入自己的密码就会验证失败…