app.py
文件具有烧瓶应用程序。 test_app.py
文件具有与代码相关的请求模块,以使用ID值调用flask应用程序URL。
app.py
和test_app.py
都在两个不同的命令提示符下显示。
当请求正在与id="10122"
一起从test_app.py
发送第二次时,旧会话id
为None。为什么是None
?我的第一个请求已经在会话中设置了id
,第二次我正在访问旧的(第一个)请求id
。
对于我的第二个具有id = "10122"
旧会话ID的请求,应为10121
。
1.current output:
Old session id: None
New session id: 10121
2.Expected Output:
Old session id: 10121
New session id: 10122
(base) H:\Python\DevPractice\day4>python app.py
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
********started********
Old session id: None
New session id: 10121
************end**********
127.0.0.1 - - [21/Sep/2019 14:28:27] "POST / HTTP/1.1" 200 -
********started********
Old session id: None
New session id: 10122
************end**********
127.0.0.1 - - [21/Sep/2019 14:28:27] "POST / HTTP/1.1" 200 -
从test_app.py调用
(base) H:\Python\DevPractice\day4>python test_app.py
results
results
from flask import Flask, make_response, redirect, session, url_for, request
SECRET_KEY = 'develop'
app = Flask(__name__)
app.config.from_object(__name__)
@app.route('/', methods=['POST'])
def index():
print("********started********")
old_id = session.get('id', None)
print("Old session id:", old_id )
if request.method == 'POST':
session['id'] = request.form['id']
#session['hello'] = 'world!'
new_id = session.get('id', None)
print("New session id:", new_id )
print("************end**********")
return "results"
if __name__ == '__main__':
app.run()
import requests
list_id = ["10121", "10122"]
for i in list_id:
payload = {'id': i}
r = requests.post("http://127.0.0.1:5000/", data=payload)
print(r.text)