HTTP GET请求获取XML文件的二进制内容

时间:2011-06-02 14:27:44

标签: xml http binary get format

我正在尝试通过HTTP获取XML文件的二进制内容,但服务器只想给我一种解释格式(每个\ r \ n都会删除\ r \ n)。

我的HTTP GET请求很简单:“GET http://%s%s%s HTTP / 1.0 \ r \ n \ nConnection:Keep-Alive \ r \ n \ r \ n”

除了.xml之外,它适用于扩展。如果我在.notxml中更改.xml,它就可以工作。

所以,我正在寻找一种二进制内容的方法而不需要对文件进行任何更改。

提前谢谢。

3 个答案:

答案 0 :(得分:1)

问题出在服务器上。当您向它请求XML文件时,它会查找将扩展名映射到Mime-Types的表。在默认情况下,XML的mime-type为text/xmlapplication/xml,两者都被视为文本格式,并受到行尾转换的影响。要获取XML的二进制流,您必须找到一种方法来强制服务器将其视为二进制而不是文本。这意味着更改服务器配置或使用被视为二进制文件的其他扩展名。

答案 1 :(得分:1)

这几乎肯定是一个Mime-Type问题。如果您使用的是IIS,我建议您查看:

http://technet.microsoft.com/en-us/library/bb742440.aspx

答案 2 :(得分:1)

这是由我的FTP客户端(FileZilla)引起的。如果我通过FTP传输.nxml并在.xml中重命名,则文件正常。 谢谢你试图帮助我。