`
web_in
  • 浏览: 15222 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

[实用工具类 / 方法] -- Java中通过HttpClient进行http接口调用请求 【难度 ★★★】

阅读更多
在自己开发的Java后台系统中,经常需要用到第三方的Http接口调用或者为解决跨域的http接口请求时,先用自己的Java后端服务调用远端的接口,获取到数据后,然后再给自己系统的前端进行Ajax调用。这里的关键技术就是Java对Http接口的访问,一般如果只是简单的运用,我们可以使用HttpClient辅助开发。
对于Maven架构的项目可以通过pom.xml文件中,加入以下内容:
<dependency>
  <groupId>org.apache.httpcomponents</groupId>
  <artifactId>httpclient</artifactId>
  <version>4.5.3</version>
</dependency>

如果是自行建立的Java Web项目,则需要引入相关的HttpClient的jar包,可以前往Apache官网的Http组件页download:
http://hc.apache.org/downloads.cgi
或者使用清华大学的镜像文件:
http://mirrors.tuna.tsinghua.edu.cn/apache//httpcomponents/httpclient/binary/httpcomponents-client-4.5.3-bin.zip

在项目中加入了这些Jar包之后,就可以使用HttpClient了。

参考代码如下:

public class HttpClientUtil {
     public static String server_addr = "http://localhost:8080/Server-api-simulator";
     public static boolean notifyServerJobStateChanged(String jobName, String jobGroup, String state, String triggerIds){
   
     CloseableHttpClient httpclient = HttpClients.createDefault();  
     HttpPost httpPost = new HttpPost(server_addr + "/UpdateReqJobStateSvlt");
     System.out.println(server_addr + "/UpdateReqJobStateSvlt");
     List<NameValuePair> nvps = new ArrayList<NameValuePair>(); 
     nvps.add(new BasicNameValuePair("jobName", jobName)); 
     nvps.add(new BasicNameValuePair("jobGroup", jobGroup));
     nvps.add(new BasicNameValuePair("state", state));
     nvps.add(new BasicNameValuePair("triggerIds", ""));
       
     try {
           httpPost.setEntity(new UrlEncodedFormEntity(nvps));
           httpclient.execute(httpPost); 
     } catch (UnsupportedEncodingException e) {
           e.printStackTrace();
     } catch (ClientProtocolException e) {
          e.printStackTrace();
     } catch (IOException e) {
         e.printStackTrace();
     } 
         return true;
     }
  
     public static void main(String[] args){
         notifyServerJobStateChanged("AAA", "BBB", "WAITING", "");
     }
}

分享到:
评论

相关推荐

    JAVA利用HttpClient进行HTTPS接口调用

    接下来,`HttpClientUtil.java`文件可能是实现HttpClient工具类,提供一个静态方法来创建和初始化HttpClient实例。这个方法可能包含以下步骤: 1. 创建一个CloseableHttpClient实例,通常使用HttpClientBuilder构建...

    HttpClient接口调用工具类(附带demo)

    总之,这个HttpClient工具类提供了一个简洁易用的接口,帮助开发者快速、方便地进行HTTP请求,无论是在进行API调用还是数据交互,都能大大简化工作流程。通过这个工具类,你无需深入了解HttpClient的底层实现,只需...

    c#实现HttpClient拼接multipart/form-data形式参数post提交数据

    使用c#实现的HttpClient拼接multipart/form-data形式参数post提交数据,包含图片内容,有需要的可以下载,希望能帮到有需要的人,

    httpClient调用webservice接口

    ### 使用HttpClient调用WebService接口详解 #### 一、概述 在现代软件开发中,Web服务(尤其是WebService)作为实现系统间交互的一种重要手段被广泛采用。WebService提供了通过HTTP协议进行远程过程调用的能力,...

    C#使用multipart/form-data示例

    5. **HTTP请求**:使用`System.Net.HttpWebRequest`或`System.Net.Http.HttpClient`类来创建HTTP POST请求。设置`Content-Type`为`multipart/form-data; boundary=your_boundary_string`,并将构造好的请求体写入...

    JAVA利用HttpClient进行HTTPS接口调用的方法

    Java中使用HttpClient进行HTTPS接口调用的方法是通过继承DefaultHttpClient类,忽略证书校验过程。首先,创建一个SSLClient类,继承DefaultHttpClient类,并在构造函数中初始化SSLContext和TrustManager。然后,使用...

    java实现HttpClient异步请求资源的方法

    在Java编程中,Apache HttpClient库提供了强大的HTTP客户端接口,用于执行HTTP请求。在某些场景下,比如处理大量并发请求或不希望主线程被阻塞时,异步请求变得尤为重要。本篇文章将详细介绍如何使用Java的...

    http远程接口调用-httpClient+跳过SSL证书校验

    本文将详细介绍如何使用Apache HttpClient库进行HTTP远程接口调用,并讲解如何在Java中跳过SSL证书校验。 HttpClient是Apache提供的一款强大的HTTP客户端库,支持多种HTTP协议版本和功能,包括GET、POST请求、...

    commons-httpclient-3.0.jar JAVA中使用HttpClient可以用到

    《JAVA中使用HttpClient:commons-httpclient-3.0.jar详解》 在JAVA开发中,进行HTTP请求时,Apache的HttpClient库是一个不可或缺的工具。本文将深入解析`commons-httpclient-3.0.jar`,它是HttpClient的一个重要...

    Https请求工具类,Java实现http请求,https请求

    Https请求工具类,Java实现http请求,https请求 本篇文章将详细介绍如何使用Java语言实现Http和Https请求的工具类,包括如何建立Https连接、如何实现Post请求、如何处理SSL验证等内容。 在Java中,使用...

    (完整版)JAVA利用HttpClient进行POST请求(HTTPS).doc

    在实际项目中,我们经常需要使用HttpClient来发送POST请求,以便与服务器进行数据交换。但是,当我们需要使用HTTPS协议时,事情变得复杂起来。HTTPS协议需要SSL/TLS证书来确保数据的安全,而HttpClient需要忽略证书...

    c#模拟post发送json和multipart/form-data格式

    在IT行业中,C#是一种广泛使用的编程语言,尤其在开发Windows应用程序、Web...通过使用Json.NET库处理JSON数据,以及HttpClient类处理multipart/form-data数据,你可以轻松地与各种API进行交互,实现文件上传等功能。

    java HttpClient 发送GET请求和带有表单参数的POST请求教程例子

    ### Java HttpClient 发送GET请求和带有表单参数的POST请求详解 ...通过上述示例和解释,你应该能够理解和掌握如何使用Java HttpClient库来发送GET和POST请求,这对于开发Web应用程序或与API接口交互至关重要。

    commons-httpclient,java中使用httpclient中使用的扩展工具

    在Java项目中,如果你需要发送GET、POST或其他HTTP请求,或者处理响应,那么Apache Commons HttpClient是一个值得考虑的工具。 HttpClient库的核心类包括`HttpClient`,它是一个HTTP客户端的抽象,以及`HttpMethod`...

    高效池化-JAVA-HttpClient工具类

    1.高效简单池化的HttpClient工具类,提供单元测试用列。 2.支持基于SpringBoot 2.1.x的自动装载模块,引用依赖即可使用。 3.公司几十个项目都使用该工具类访问第三方的Http/Https+json协议接口。 4.经过上市公司多个...

    java使用HttpClient发送http请求

    “工具”标签表明HttpClient是一个实用工具,可以与其他Java项目集成,提高开发效率。在实际项目中,你可能需要结合其他库,如Jackson或Gson处理JSON数据,或者使用OkHttp等替代方案。 在提供的文件`HttpTest`中,...

    c#下post multipart/form-data和JSON

    在C#中,我们通常使用`HttpClient`类来实现这种类型的POST请求。 1. 使用`MultipartFormDataContent`:这是.NET Framework或.NET Core中的一个类,用于构建`multipart/form-data`的内容。首先,我们需要创建一个`...

    HttpClientUtil工具类,调用第三方接口

    该工具类是java 调用第三方接口时需要使用到的。HttpClientUtil 包含get和post方法。

    java 调用webservice使用HttpClient和XFire两种方式

    在Java开发中,有时我们需要与外部服务进行交互,如发送短信、获取数据等,这时就会用到Web Service。本文将详细介绍如何使用HttpClient和XFire这两种不同的库来调用Web Service,特别是针对短信接口的调用。 首先...

    HttpClientHelper 工具类

    HttpClientHelper 对这个类进行了封装,使得开发者无需直接与HttpClient接口打交道,而是通过更简洁、易用的方法调用来实现网络通信。这提高了代码的可读性和可维护性。 单例模式是软件设计模式的一种,确保一个类...

Global site tag (gtag.js) - Google Analytics