将Curl命令转换为Java / Android

时间:2013-12-26 09:13:21

标签: java api curl basic-authentication apache-httpclient-4.x

我正在开发两个应用程序 -

第一个是使用Spring MVC 3的Web应用程序

第二个是同一个Web应用程序的Android应用程序。

在两者中,我正在集成基本身份验证,以使用API​​对该站点上的用户进行身份验证。

在API教程中,以下curl命令用于验证用户 -

$ curl -u username:password insert_Url_here -d'[xml body here]'

我没有得到,如何在Java和Android代码中转换此命令。

请指导我。我完全被困在这里。

1 个答案:

答案 0 :(得分:2)

使用HttpClient 4,您需要执行以下操作:

  • 创建客户端:
  

CloseableHttpClient client = HttpClientBuilder.create()。build();

  • 创建POST请求:
  

final HttpPost postRequest = new HttpPost(SAMPLE_URL);

  • 设置POST请求的正文:
  

request.setEntity(new StringEntity(“POST的正文”));

  • 配置身份验证(可能是Basic Auth):
  

UsernamePasswordCredentials creds = new UsernamePasswordCredentials(username,password);

     

postRequest.addHeader(new BasicScheme()。authenticate(creds,request,null));

就是这样 - 这基本上就是你的curl命令所做的。

希望这会有所帮助。