Android HttpURLConnection的HTTP请求包装器(方法、头、参数)?

Android HttpURLConnection的HTTP请求包装器(方法、头、参数)?,android,post,httpurlconnection,Android,Post,Httpurlconnection,被Python破坏了(例如,requests.post(url,data={'p1':'v1','p2':'v2'},headers={'H1':'v1'})),我正在寻找一个可以在Android上使用的等价物 我的代码已经在不同的线程上运行,所以我不需要异步 HttpURLConnection被推荐用于Android,因为它是所有类型的轻量级连接,但与Python请求等效的是。。。大。 我看到了多个部分(例如预编码的参数字符串)解决方案,以及一些需要解决的问题。与其冒着犯错误或忽略自己写的东

被Python破坏了(例如,
requests.post(url,data={'p1':'v1','p2':'v2'},headers={'H1':'v1'})
),我正在寻找一个可以在Android上使用的等价物

我的代码已经在不同的线程上运行,所以我不需要异步

HttpURLConnection被推荐用于Android,因为它是所有类型的轻量级连接,但与Python请求等效的是。。。大。

我看到了多个部分(例如预编码的参数字符串)解决方案,以及一些需要解决的问题。与其冒着犯错误或忽略自己写的东西的风险,我要问:
这样的包装器是否已经可用,
请求(方法、字符串、映射、映射)
或类似的


我希望这样一个解决方案每次调用只需要很少的代码,并且可以自己管理所有奇怪的东西(例如pre-Froyo keepAlive hack)。

我想我有适合您的解决方案。有同样的问题(被Node.js破坏),并且不喜欢
HttpURLConnection
的“接口”

您可以找到一个没有依赖项的小型库,它以一种不太常见的用例可以通过使用包装的HUC实现的方式包装
HttpURLConnection
。它叫。还有一个链接,以防你错过了什么

一个典型的POST请求,带有JSON负载和带有一些头的JSON响应,如下所示:

JSONObject postObj=新的JSONObject();
后目标投入(“p1”、“v1”);
后置卖出期权(“p2”、“v2”);
Webb=Webb.create();
响应=韦伯
.post(“http://www.example.com/app/myresource")
.header(“x-date-header”,新日期())
.header(“x-other-header”,“某些文本”)
.主体(后OBJ)
.connectTimeout(3000)
.asJsonObject();
if(response.issucess()){
JSONObject outcome=response.getBody();
// ...
}否则{
System.out.println(response.getStatusCode());
System.out.println(response.getResponseMessage());
System.out.println(response.getErrorBody());
}
有许多方法可以为
Webb
实例设置默认值,并在
请求
对象中使用或覆盖它们


该库经过了很好的测试,特别是在Android上,但它没有特定的代码或对Android API的依赖性,因此您必须自己为Froyo管理
keepAlive

很酷,这正是我想要的。非常感谢。