在自己开发的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", "");
}
}
分享到:
相关推荐
接下来,`HttpClientUtil.java`文件可能是实现HttpClient工具类,提供一个静态方法来创建和初始化HttpClient实例。这个方法可能包含以下步骤: 1. 创建一个CloseableHttpClient实例,通常使用HttpClientBuilder构建...
总之,这个HttpClient工具类提供了一个简洁易用的接口,帮助开发者快速、方便地进行HTTP请求,无论是在进行API调用还是数据交互,都能大大简化工作流程。通过这个工具类,你无需深入了解HttpClient的底层实现,只需...
使用c#实现的HttpClient拼接multipart/form-data形式参数post提交数据,包含图片内容,有需要的可以下载,希望能帮到有需要的人,
### 使用HttpClient调用WebService接口详解 #### 一、概述 在现代软件开发中,Web服务(尤其是WebService)作为实现系统间交互的一种重要手段被广泛采用。WebService提供了通过HTTP协议进行远程过程调用的能力,...
5. **HTTP请求**:使用`System.Net.HttpWebRequest`或`System.Net.Http.HttpClient`类来创建HTTP POST请求。设置`Content-Type`为`multipart/form-data; boundary=your_boundary_string`,并将构造好的请求体写入...
Java中使用HttpClient进行HTTPS接口调用的方法是通过继承DefaultHttpClient类,忽略证书校验过程。首先,创建一个SSLClient类,继承DefaultHttpClient类,并在构造函数中初始化SSLContext和TrustManager。然后,使用...
在Java编程中,Apache HttpClient库提供了强大的HTTP客户端接口,用于执行HTTP请求。在某些场景下,比如处理大量并发请求或不希望主线程被阻塞时,异步请求变得尤为重要。本篇文章将详细介绍如何使用Java的...
本文将详细介绍如何使用Apache HttpClient库进行HTTP远程接口调用,并讲解如何在Java中跳过SSL证书校验。 HttpClient是Apache提供的一款强大的HTTP客户端库,支持多种HTTP协议版本和功能,包括GET、POST请求、...
《JAVA中使用HttpClient:commons-httpclient-3.0.jar详解》 在JAVA开发中,进行HTTP请求时,Apache的HttpClient库是一个不可或缺的工具。本文将深入解析`commons-httpclient-3.0.jar`,它是HttpClient的一个重要...
Https请求工具类,Java实现http请求,https请求 本篇文章将详细介绍如何使用Java语言实现Http和Https请求的工具类,包括如何建立Https连接、如何实现Post请求、如何处理SSL验证等内容。 在Java中,使用...
在实际项目中,我们经常需要使用HttpClient来发送POST请求,以便与服务器进行数据交换。但是,当我们需要使用HTTPS协议时,事情变得复杂起来。HTTPS协议需要SSL/TLS证书来确保数据的安全,而HttpClient需要忽略证书...
在IT行业中,C#是一种广泛使用的编程语言,尤其在开发Windows应用程序、Web...通过使用Json.NET库处理JSON数据,以及HttpClient类处理multipart/form-data数据,你可以轻松地与各种API进行交互,实现文件上传等功能。
### Java HttpClient 发送GET请求和带有表单参数的POST请求详解 ...通过上述示例和解释,你应该能够理解和掌握如何使用Java HttpClient库来发送GET和POST请求,这对于开发Web应用程序或与API接口交互至关重要。
在Java项目中,如果你需要发送GET、POST或其他HTTP请求,或者处理响应,那么Apache Commons HttpClient是一个值得考虑的工具。 HttpClient库的核心类包括`HttpClient`,它是一个HTTP客户端的抽象,以及`HttpMethod`...
1.高效简单池化的HttpClient工具类,提供单元测试用列。 2.支持基于SpringBoot 2.1.x的自动装载模块,引用依赖即可使用。 3.公司几十个项目都使用该工具类访问第三方的Http/Https+json协议接口。 4.经过上市公司多个...
“工具”标签表明HttpClient是一个实用工具,可以与其他Java项目集成,提高开发效率。在实际项目中,你可能需要结合其他库,如Jackson或Gson处理JSON数据,或者使用OkHttp等替代方案。 在提供的文件`HttpTest`中,...
在C#中,我们通常使用`HttpClient`类来实现这种类型的POST请求。 1. 使用`MultipartFormDataContent`:这是.NET Framework或.NET Core中的一个类,用于构建`multipart/form-data`的内容。首先,我们需要创建一个`...
该工具类是java 调用第三方接口时需要使用到的。HttpClientUtil 包含get和post方法。
在Java开发中,有时我们需要与外部服务进行交互,如发送短信、获取数据等,这时就会用到Web Service。本文将详细介绍如何使用HttpClient和XFire这两种不同的库来调用Web Service,特别是针对短信接口的调用。 首先...
HttpClientHelper 对这个类进行了封装,使得开发者无需直接与HttpClient接口打交道,而是通过更简洁、易用的方法调用来实现网络通信。这提高了代码的可读性和可维护性。 单例模式是软件设计模式的一种,确保一个类...