文章目录
21-1 get、post区别实战详解
1) get
2) post
curl -s 'http://127.0.0.1:5000/request?a=1&b=2' -v &>/tmp/get
curl -s 'http://127.0.0.1:5000/request' -d "a=1&b=2" -v &>/tmp/post
-d # 表示发送数据是form形式,以post请求发送
curl -s 'http://127.0.0.1:5000/request?a=1&b=2' -v &>tmp/get
curl -s 'http://127.0.0.1:5000/request?a=1&b=2' -d "a=3&b=4" -v &>tmp/post2
- post 和get均可用query方法发送请求
3) 总结
21-2 session、cookie、token区别解析
1) session
- session:
- 两次的加密串一样,说明session的自存cookie并没有存到加密串中,而是存到了服务器中,加密串存储的是关联数据,用来代表关联关系
- 也叫基于cookie的session,是数据管理机制
2) cookie
sessionid以cookie的形式存到了客户端
3) cookie与session的区别
4) token
1、企业微信
2、GitHub
5) session与token的区别
21- flask demo 代码
- 用于测试http请求,作为例子
- flask demo
from flask import Flask, session, request, Request, make_response
app = Flask(__name__)
request: Request
app.secret_key = "key"
@app.route("/request", methods=['POST', 'GET'])
def hello():
query = request.args
post = request.form
return f"query: {query}\n" \
f"post: {post}"
@app.route("/session")
def session_handle():
for k, v in request.args.items():
session[k] = v
resp = make_response({k: v for k, v in session.items()})
for k, v in request.args.items():
resp.set_cookie(f"cookie_{k}", v)
return resp
- 运行命令
export FLASK_APP=demo.py
flask run