我有一个发送XML请求的视图获取响应并在模板中呈现响应。但是现在我遇到一个问题,当两个用户向不同的Web服务发出请求时,模板中的数据会显示上一个请求的数据。
当多个用户向不同的网络服务或同一网络服务发出请求时,我不知道如何处理。
我想为每个用户动态生成一个模板,但我不知道如何处理这些网址。
我的观点:
def LeerXMLResponseView(request):
archivo_request = request.GET.get('xml')
ws_service = request.GET.get('servicio')
archivo = '/DjangoProjects/xmlcbs/media/'+ archivo_request
with open(archivo,"r") as file:
request_data = file.read()
target_url = "http://1.1.1.1:1111/services/" + ws_service + "?wsdl"
headers = {'Content-type':'text/xml'}
data_response = requests.post(target_url, data=request_data, headers=headers).text
jdato = xmltodict.parse(data_response)
data = json2html.convert(json = jdato)
data_template = data
return render_to_response('prueba.html', {'data':data_template})
此视图适用于一个用户,但当两个或多个用户发出请求时,数据将被覆盖。
知道如何使用具有不同请求和响应的相同视图处理多个用户吗?
答案 0 :(得分:1)
将请求的参数存储在本地文件中是没有意义的。特别是当你完成它的方式时,只能有这个文件的一个版本;后续用户将覆盖前一个文件。
而是将必要的数据存储在session。
中