Flask模拟登录

这篇博客介绍了如何使用Python的Flask框架进行模拟登录。通过创建路由和视图函数处理GET和POST请求,结合HTML表单,实现了用户输入数据并提交的登录功能。示例中展示了如何处理表单数据,并通过URL重定向实现登录成功后的页面跳转。
摘要由CSDN通过智能技术生成

Flask模拟登录

URL:Uniform Resource Locator 统一资源定位符(网址、域名)

一个完整的URL:协议、网址、文件地址

Flask

Flask有三个主要依赖:路由、调试和Web服务器网关接口(WSGI, Web server gateway interface)子系统由Werkzeug提供;模板系统由Jinja2提供;命令行系统又Click提供。

应用的基本结构

所有Flask应用都必须创建一个应用实例。

路由和视图函数

处理URL和函数之间关系的程序称为路由

处理入站请求的函数称为视图函数

表单

使用HTML可以创建Web表单,供用户填写信息。表单数据由Web浏览器提交给服务器,这一过程通常使用POST请求。

传递HTTP请求

get:使用未加密的形式向服务器发送数据

post:向服务器发送HTML表单中的数据,服务器不会缓存POST接受的数据

put:使用上传的内容替换指定的目标资源

head:和get方法相同,但是没有响应体

delete:删除由URL指定的目标资源

常用的两种传递HTTP请求的方法是get和post

import flask         					#导入flask模块
html_txt = """        					#变量html_txt初始化,作为GET请求的页面
<!DOCTYPE html>
<html>
    <body>
        <h2>如果收到了GET请求</h2>
        <form method='post'>       		#设置请求方法是“post”
        <input type='submit' value='按下我发送POST请求' />
        </form>
    </body>
</html>
"""
app = flask.Flask(__name__)          		#实例化类Flask
#URL映射,不管是‘GET’方法还是‘POST’方法,都被映射到helo()函数
@app.route('/aaa',methods=['GET','POST'])
def helo():                         		#定义业务处理函数helo()
    if flask.request.method == 'GET':  	#如果接收到的请求是GET
        return html_txt             		#返回html_txt的页面内容
    else:                         			#否则接收到的请求是POST(post方法)
        return '我司已经收到POST请求!'
if __name__ == '__main__':
    app.run()                      			#运行程序

Flask+html实现模拟登陆

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
   <body>

      <form action = "http://localhost:5000/login" method = "post">
         <p>请输入名字:</p>
         <p><input type = "text" name = "biaodan" /></p>
         <p><input type = "submit" value = "登录" /></p>
      </form>

   </body>
</html>

</html>
from flask import Flask, redirect, url_for, request
app = Flask(__name__)

@app.route('/success/<name>')
def success(name):
   return '欢迎%s' % name +'登录本系统'

@app.route('/login',methods = ['POST', 'GET'])
def login():
   if request.method == 'POST':
      user = request.form['biaodan']
      return redirect(url_for('success',name = user))  #URL重定向
   else:
      user = request.args.get('biaodan')
      return redirect(url_for('success',name = user))  #URL重定向

if __name__ == '__main__':
   app.run(debug = True)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值