Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/216.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.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
Android Apache MultipartEntity:无法添加类似于内容类型的额外字段_Android_Apache_Multipartentity - Fatal编程技术网

Android Apache MultipartEntity:无法添加类似于内容类型的额外字段

Android Apache MultipartEntity:无法添加类似于内容类型的额外字段,android,apache,multipartentity,Android,Apache,Multipartentity,我试图使用addField方法向多部分HTTP POST添加额外字段,但是当我使用WireShark捕获数据包时,我看不到它的效果。有什么问题吗 private void upload3(File file) { DefaultHttpClient httpclient = new DefaultHttpClient(); HttpPost httpPost = new HttpPost(url + "?recname=" + fileName);

我试图使用addField方法向多部分HTTP POST添加额外字段,但是当我使用WireShark捕获数据包时,我看不到它的效果。有什么问题吗

private void upload3(File file) {
        DefaultHttpClient httpclient = new DefaultHttpClient();
        HttpPost httpPost = new HttpPost(url + "?recname=" + fileName);
        MultipartEntity entity = new MultipartEntity();

        String boundary = "---------------------------This is the boundary";

        httpPost.addHeader("Content-Type", "multipart/form-data; boundary="
                + boundary);


        try {
            File f = new File(  file_path);

            FileBody body = new FileBody(f);
            FormBodyPart fbp = new FormBodyPart( "file", body );
            fbp.addField("Content-Type", "audio/mp4");

            entity.addPart(fbp);


        } catch (Exception e) {
            e.printStackTrace();
        }

        httpPost.setEntity(entity);
        }

好吧,我找到答案了。问题是,当您创建一个新的MultipartEntity时,它会生成一个随机边界,但我的服务器正在等待我自己的边界。所以我不得不将MultipartEntity构造函数更改为:

String boundary = "---------------------------Yout own boundary";
MultipartEntity entity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE, boundary, null);

我看不到它的效果
什么的效果
MultipartEntity
正在自行修改内容类型标题…如果我尝试设置任何额外的字段,如文件名或内容传输编码,则内容类型只是一个示例。我在post消息中看不到文件。@czadam边界应该是什么?