我对Android很陌生。我一直在寻找一个关于如何通过网络执行 HTTP 发布请求的好例子,但我正在犹豫使用哪个,因为我只为 Android 4 开发。我想要一些异步、快速和简单的东西。非常感谢 JSON 结果解析的示例。有任何想法吗?我应该使用 Apache HTTP 客户端还是 HttpURLConnection?
问问题
936 次
1 回答
1
对我而言, RestTemplate是在 Android 上使用 REST 服务的最简单方法之一。
JSON 示例:
RestTemplate template = new RestTemplate();
HttpComponentsClientHttpRequestFactory requestFactory = new HttpComponentsClientHttpRequestFactory();
//setting timeout
requestFactory.getHttpClient().getParams().setIntParameter(CoreConnectionPNames.CONNECTION_TIMEOUT,
HTTP_TIMEOUT);
requestFactory.getHttpClient().getParams().setIntParameter(CoreConnectionPNames.SO_TIMEOUT,
HTTP_TIMEOUT);
template.setRequestFactory(requestFactory);
//setting converter for JSON
List<HttpMessageConverter<?>> converters = template.getMessageConverters();
converters.add(new MappingJacksonHttpMessageConverter());
template.setMessageConverters(converters);
ResponseEntity<ResponseObject> response = template.postForEntity(URL, requestObject, ResponseObject.class);
ResponseObject result = response.getBody();
为了使这项工作您需要在您的项目中使用 RestTemplate 和 jackson(我认为它应该是 jackson-all)jar。您可以在 RestTemplate 文档(上面的链接)中找到这些 jar 的链接。
为了使这个异步使用 Android SDK 中的 AsyncTask。
于 2012-07-11T16:54:12.380 回答