Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/186.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过HTTP从Android上传文件_Android_File Upload_Http Post_Httprequest_Mime Types - Fatal编程技术网

通过HTTP从Android上传文件

通过HTTP从Android上传文件,android,file-upload,http-post,httprequest,mime-types,Android,File Upload,Http Post,Httprequest,Mime Types,我正在尝试将一个XML文件从android设备上传到一个URL,在那里它将被解析。例如,我收到了一个curl命令,它可以工作: curl -F xml=@templ2.xml "http://the-url-to-the-server" 但当我尝试从Android设备发送东西时,我总是得到“无效xml”作为响应。因此,基于此,我为自己创建了一个php文件,尝试将该文件发送到,以查看它是如何发送的: <?php print_r($_FILES); print_r($_REQUEST); ?

我正在尝试将一个XML文件从android设备上传到一个URL,在那里它将被解析。例如,我收到了一个curl命令,它可以工作:

curl -F xml=@templ2.xml "http://the-url-to-the-server"
但当我尝试从Android设备发送东西时,我总是得到“无效xml”作为响应。因此,基于此,我为自己创建了一个php文件,尝试将该文件发送到,以查看它是如何发送的:

<?php
print_r($_FILES);
print_r($_REQUEST);
?>
给予

一些相关问题,我已经尝试了代码:

而不是

reqEntity.addPart("bar", new FileBody(file, "text/xml"));
试着这样做

reqEntity.addPart("bar");
httpPost.addHeader("Content-Type", "application/xml");

我解决了我的问题。当我查看curl命令时,我意识到xml=@temp2.xml意味着我必须使用xml作为参数的名称。所以

reqEntity.addPart("xml", new FileBody(file));

然后您将更改整个请求的内容类型,我认为应该是某种形式的多部分。不管怎么说,我试过了,没用。
reqEntity.addPart("bar");
httpPost.addHeader("Content-Type", "application/xml");
reqEntity.addPart("xml", new FileBody(file));