curl:XML文件被截断

时间:2018-10-01 14:42:17

标签: curl

我使用带有SSL的cURL 7.50.3在我的应用程序上下载xml文件:

/usr/local/bin/curl  -v -E /home/file.crt.pem --key /home/file.key.pem "https://www.myWebSite.com/file?type=interrogation&nom=10280502_20180905208.XML&doc=reponses&societeId=10000" --output /tmp/RESULT.XML

文件下载结束,没有错误,文件内容正确(正确的数据,正确的xml格式...),但是被截断了。 如果我尝试使用chrome或邮递员访问相同的URL并下载相同的文件,则可以获取整个文件。

很遗憾,我无法共享xml文件,因为它包含个人信息。

我尝试了一些大型文件,这些文件需要花费几分钟的时间来下载,而一些小文件却在一秒钟内被下载。

以下是小文件的cURL输出:

 [5 bytes data]  
< HTTP/1.1 200 OK  
< Date: Mon, 01 Oct 2018 14:35:09 GMT  
< Set-Cookie: JSESSIONID=3ADE96F2...; Path=/; Secure; HttpOnly  
<
< Content-Disposition: attachment; filename=10280502_20180905208_RESULTATS.XML  
< Content-Type:
< text/xml;charset=utf-8  
< Content-Length: 5626406 
< Vary: Accept-Encoding  
<    0 5494k    0     0    0     0      0      0
     --:--:-- --:--:-- --:--:--     0{ [5 bytes data] 
< 100 5494k  100 5494k    0     0  5208k      0  0:00:01  0:00:01
 --:--:-- 5213k
< Connection #0 to host www.myWebSite.com left intact

为此,我得到一个5.6Mo文件,但我应该得到一个11.9Mo。

对于大文件,我收到一条消息:

{ [5 bytes data]
 89 3432k   89 3069k    0     0   103k      0  0:00:33  0:00:29  0:00:04     0* TLSv1.2 (IN), TLS alert, Client hello (1):
{ [2 bytes data]
 89 3432k   89 3069k    0     0   100k      0  0:00:34  0:00:30  0:00:04     0* transfer closed with 371709 bytes remaining to read
 89 3432k   89 3069k    0     0   100k      0  0:00:34  0:00:30  0:00:04     0
* Closing connection 0
} [5 bytes data]
* TLSv1.2 (OUT), TLS alert, Client hello (1):
} [2 bytes data]
curl: (18) transfer closed with 371709 bytes remaining to read

关于我在做什么错的任何想法吗? 谢谢!

编辑:添加--ignore-content-length似乎可以解决问题,但是我不明白为什么。而且无论如何仍然不理解为什么这与导航器和邮递员一起使用,除非它们默认情况下都使用此选项

0 个答案:

没有答案