- # 1,登录成功 设置Cookie
- # 2,查询余额,需要携带Cookie,负责返回未登录
- # 3,退出登录清空Cookie
-
- from flask import Flask, request, make_response
-
- app = Flask(__name__)
-
- # 登录设置Cookie
- @app.route("/login")
- def login():
- username = request.args.get('username')
- password = request.args.get('password')
- # 判断用户名和密码
- if username == 'admin' and password == '123':
- print('登录成功')
- # 设置Cookie
- res = make_response("登录成功")
- res.set_cookie("login", "asdasdasd")
- return res
-
- else:
- return '用户名或密码错误'
-
-
- # 查询余额,需携带Cookie
- @app.route("/check_money")
- def check_money():
- # 设置一个金额变量
- money = '8848.88'
- request.cookies.get("login")
- if 'login' in request.cookies:
- print('cookies存在')
- print(money)
- return '查询金额为:'+money
- else:
- return '查询金额请先登录'
-
- @app.route("/login_out")
- def login_out():
- resp = make_response("注销登录")
- # 删除cookie
- resp.delete_cookie("login")
- return resp
-
- if __name__ == '__main__':
- app.run()
- import requests
-
- # 多个接口使用同一个session对象,通过requests.session()可以帮我们去管理和关联cookie
- session = requests.session()
-
- def login():
- url = 'http://127.0.0.1:5000/login'
- data = {
- 'username':'admin',
- 'password':'123'
- }
- res = session.get(url=url , params=data)
- print(res.text)
-
-
- def check_money():
- url = 'http://127.0.0.1:5000/check_money'
- res1 = session.get(url=url)
- print(res1.text)
-
- login()
- check_money()
注释掉login函数,只请求check_money这个接口,缺少cookie无法返回查询的结果

当请求login接口的时候会设置cookie,通过requests.session()可以帮我们去管理和关联cookie,
这样check_money接口请求的时候可以获取的cookie,从而返回了我们想要查询的数据
