0

我有一个文件,我需要将其内容发送到一个函数。我目前正在做的事情如下:

$ curl --data-urlencode "$( cat my_file.xml)" MyIP

# in function
def receiver(request):
    print request.POST

这会返回类似:

<QueryDict: {u'\ufeff<?xml version ': [u' "1.0" encoding = "UTF-8"?>\n<Orders>\n ...</Orders>']}>

换句话说,该curl命令正确地将数据发送到 django 函数;但是,由于 POST 数据在 request.POST 键(`u'\ufeff

另外 xml 文件没有正确的 url 编码,所以我不认为我可以使用curl -d @file.

它似乎被'\ufeff<?xml version '当作 QueryDict 键。我将如何在此处传递文件内容并将其作为单个字符串检索,以便我可以解析 xml?

4

1 回答 1

0

有一个非常简单(hack)的解决方案,在request.POSTdict上使用字符串连接来重新组合信息:

contents = request.POST.keys()[0] + "=" + request.POST.values()[0]
于 2012-06-26T18:34:30.680 回答