Django 请求 XML 文件
你好,我想把一个XML文件从一个页面传到另一个页面。
第一个页面(在这个页面我发送XML文件):
def view1(request):
xml_file = open("/path/to/respuesta_error.xml", "rb").read()
r = urllib2.Request("http://localhost:8000/ingram/response/", data=xml_file, headers={'Content-Type': 'text/xml'})
u = urllib2.urlopen(r)
response = u.read()
return HttpResponse(response)
第二个页面(在这个页面我应该读取XML文件):
@csrf_exempt
# https://docs.python.org/2/library/xml.etree.elementtree.html#xml.etree.ElementTree.Element
def view2(request):
xml_file = open("/path/to/respuesta_error.xml", "rb") # <-- How can I read the request XML?
text = xml_file.read()
text = strip_ns(text)
file_new = open("ultima_respuesta.xml", "w")
file_new.write(texto)
file_new.close()
return HttpResponse("test")
在第二个页面,我读取了文件 /path/to/respuesta_error.xml,但我不知道该怎么做才能读取从第一个页面通过POST发送过来的XML文件。
我试过用request和request.body,但都不行。
谢谢!
1 个回答
1
我发现请求的主体(request.body)里包含了一个字符串格式的XML,所以view2应该像这样:
@csrf_exempt
# https://docs.python.org/2/library/xml.etree.elementtree.html#xml.etree.ElementTree.Element
def view2(request):
text = strip_ns(request.body)
file_new = open("ultima_respuesta.xml", "w")
file_new.write(texto)
file_new.close()
return HttpResponse("test")