基于HTML+Flask的前后端交互
前端HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>login</title>
</head>
<body>
<h1>用户注册</h1>
<form action="" method="post">
<p><input type="text" name="username" placeholder="用户名"></p>
<p><input type="password" name="password" placeholder="密码"></p>
<p><input type="submit" value="用户登录"></p>
</form>
</body>
</html>
后端
from flask import Flask, request, render_template
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World!'
@app.route('login',method=['GET','POST'])
def login():
print(request.form)
print(request.data)
print(request.method)
print(request.values)
print(request.headers)
print(request.args)
print(request.json)
return render_template("login.html")
if __name__ == '__main__':
app.run()
1. request.method
获取验证请求方式
python(request.method)
2. request.form
form传递过来的值,从request.form获取
print(request.form)
print(request.form["user"])
print(request.form.get("pwd"))
print(list(request.form.keys()))
3. request.args
获取url中传递的参数
from flask import request
@app.route("/req",methods=["POST","GET"])
def req():
print(request.args) #控制台输出URL中传递的值
return "OK"
request.args 与 request.form的区别就是:
request.args 是获取url的参数
request.form 是获取form表单中的参数
4. request.values
获取form数据和url数据
print(request.values)
print(request.values.get("id"))
print(request.values["user"])
print(request.values.to_dict()) #直接将参数转化成字典形式
!注意:url和form中的Key重名的话,form中同名的key会被url中的value覆盖
5. request.cookies
6. request.headers
获取本次请求请求头
7. request.data
如果处理不了就放在data里面
8. request.files
9. 获取路径
# 获取当前的url路径
print(request.path) # /req
# 获取当前url路径的上一级路径
print(request.script_root) #
# 获取当前url的全部路径
print(request.url) # http://127.0.0.1:5000/req
# 获取url路径上一级的全部路径
print(request.url_root) # http://127.0.0.1:5000
10. request.json
返回json解析数据