代码之家  ›  专栏  ›  技术社区  ›  hpique

在Android中发送大型post param

  •  0
  • hpique  · 技术社区  · 15 年前

    如何在Android中发送一个大的(>5MB)post参数(以及其他post参数)?

    我正在使用 org.apache.http.client.methods.HttpPost 以及 BasicNameValuePair 发送后参数。

     HttpClient httpclient = new DefaultHttpClient();
     HttpPost httppost = new HttpPost(someURL);
     List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
     nameValuePairs.add(new BasicNameValuePair("param1", "value1"));
     nameValuePairs.add(new BasicNameValuePair("param2", hugeValue));
     httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
     httpclient.execute(httppost);
    

    hugeValue 是一个非常大的字符串,我想从 InputStream 我读的时候就发。我该怎么做?

    1 回复  |  直到 15 年前
        1
  •  5
  •   Impression    15 年前

    公共软件是对的。HttpUrlConnection和直接写入outputstream将解决您的内存问题。我已经在自己的应用程序中使用它来上传10 mb及以上的图像数据。

    一个很好的例子是根据你的职位要求: http://www.java.happycodings.com/Other/code21.html