【发布时间】:2012-07-09 07:25:54
【问题描述】:
我使用this example 中的代码从Android client 向我的网络服务器发送JSONObject。此处重现代码
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
int TIMEOUT_MILLISEC = 10000; // = 10 seconds
HttpParams httpParams = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParams, TIMEOUT_MILLISEC);
HttpConnectionParams.setSoTimeout(httpParams, TIMEOUT_MILLISEC);
HttpClient client = new DefaultHttpClient(httpParams);
HttpPost request = new HttpPost(serverUrl);
request.setEntity(new ByteArrayEntity(
postMessage.toString().getBytes("UTF8")));
HttpResponse response = client.execute(request);
我的问题
如何在将JSONObject 发送到服务器之前对其进行最佳压缩以及如何在服务器上对其进行解压缩(我使用的是Java Servlets)?
【问题讨论】:
-
数据量大到真的需要压缩吗?
-
@Squonk 我可能需要做一些分析来量化我通过服务器发送的数据的大小,但是从客户端到服务器再返回大约需要 2 分 49 秒。
-
你看过developer.android.com/reference/java/util/zip/…吗?但是,您可能需要使用
HttpURLConnection而不是DefaultHttpClient。
标签: android json servlets compression