0

只是一个快速的问题。到目前为止,我一直在使用 HttpClient 和 HttpPost 将文件和一些参数发布到我服务器上的 php 脚本中。但是,它们已被弃用。我想知道我可以用什么来代替它。我在其他帖子上找到了一些答案,但不幸的是,我没有设法将它们中的任何一个与我用于 MultiPartEntity 帖子的 HttpMime 库集成。

            HttpClient httpclient = new DefaultHttpClient();        // Deprecated
        HttpPost httpost = new HttpPost(inData[0].URL);         // Deprecated

            // Request To Entity
        MultipartEntity entity = new MultipartEntity();
            // Add Parameters
        for(Request r : inData[0].Params)
            entity.addPart(r.Key, new StringBody(r.Body));
            // Add File
        entity.addPart("img", new FileBody(inData[0].FileToUpload));

        httpost.setEntity(entity);

        HttpResponse responsePOST = httpclient.execute(httpost);    // Deprecated
        HttpEntity resEntity = responsePOST.getEntity();            // Deprecated
        if (resEntity != null)
            inData[0].RequestResult.add(EntityUtils.toString(resEntity));
        else
            throw new Exception("");
        return inData[0];

    } catch (Exception e) {
        e.printStackTrace();
        inData[0].RequestResult.add("ERROR");
    }
    return inData[0];

有人会指出我正确的方向吗?谢谢

4

1 回答 1

0

在我的工作中,我们也使用了 apache 库,但我们已将它们替换为 okHTTP。

更多关于 okHTTP 的信息可以在这里找到:http ://square.github.io/okhttp/

可以在此处找到有关上传多部分文件的信息:

使用 OkHttp 分段上传大文件

于 2015-05-30T11:22:58.363 回答