【发布时间】:2020-11-03 02:53:32
【问题描述】:
我在 python 烧瓶中编写了一个 Web 服务。 在我的代码中,我有烧瓶会话对象,它看起来不错。
这是一个简短的示例,我的 python 代码是什么样子的-
@app.route('/api/simpleTry', methods=['GET'])
def api_simple():
user_id = request.args['id']
sentence = request.args['sentence']
if 'user_id' not in session.keys():
session['user_id'] = user_id
return jsonify("hello")
app.run()
当我通过“crome”资源管理器调用服务时,它运行良好,会话持续存在,当我 2 打开 2 个客户端(1-crome,2-incognito)时,我可以看到它们每个都有一个单独的会话。
此外, 我有一个 C# mvc Web 应用程序作为我的客户端,在那里我调用我编写的 python 烧瓶服务。
address = "http://localhost:5000/api/simpleTry?id=" + userId + "&sentence=" + sentence;
using (var w = new WebClient())
{
json_data = w.DownloadString(address);
...
}
代码运行良好。 但是,与“crome”相反,当从 c# 发送请求时,python 中的会话不会持续存在并为每个请求创建一个新会话。
我想我应该从 C# 向服务发送一些东西以使用现有会话,但我不知道什么和如何。
【问题讨论】:
-
您是否存储并发回了标头中返回的
sessioncookie?
标签: python c# flask web-applications session-state