【发布时间】:2018-11-21 05:12:28
【问题描述】:
我“认为”我有一些缓存问题。 我的网络服务正在通过 POST 请求接收数据并将其保存到磁盘。
以下是我的代码:
@app.route('/ws_part' , methods=['POST'])
def ws_part():
request_data = request.get_json()
#placeholder for workstation number and part number
received_data ={'ws_no':request_data['workstation'],
'part_no':request_data['part']}
#Checking if workstation number is already available
global updated
updated = 'no'
for i in repository:
if i['ws'] == received_data['ws']:
i['part'] = received_data['part']
updated = 'yes'
if(updated!='yes'):
new_input = received_data
repository.append(new_input)
return jsonify({'repository': repository})
我面临的问题: 1.第一个请求成功通过并给出 200 OK 响应和工作站编号以及请求附带的部分保存在“存储库”占位符中。 2.但是下一个请求抛出500服务器错误
错误: ws_part 中的文件“API_ws_par.py”,第 23 行 如果 i['ws'] == received_data['ws']: 键错误:'ws'
3.有趣的事情是: 如果此时我重新启动我的 Web 服务并再次触发 POST 请求,那么这个新请求带来的数据将被覆盖,并且我将丢失以前保存的数据。 4.另外,随之而来的第二个 POST 请求也会抛出同样的 500 服务器错误
请指导这是否与缓存有关? 如果是,请告诉我该怎么做?
提前致谢。
【问题讨论】:
标签: python web-services caching flask flask-restful