我的编程空间,编程开发者的网络收藏夹
学习永远不晚

java怎么使用HttpClient调用接口

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

java怎么使用HttpClient调用接口

这篇文章主要介绍“java怎么使用HttpClient调用接口”,在日常操作中,相信很多人在java怎么使用HttpClient调用接口问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”java怎么使用HttpClient调用接口”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

java使用HttpClient调用接口

HttpClient 提供的主要的功能

(1)实现了所有 HTTP 的方法(GET,POST,PUT,DELETE 等)

(2)支持自动转向

(3)支持 HTTPS 协议

(4)支持代理服务器

直接言归正传了!!!!上代码

 public static String sendPutForm(String url,  Map<String,String> map, String encoding) throws ParseException, IOException {        String body = "";        // 打印了一下我推送的json数据        log.info("我推送的json数据:" + map);        log.info("我推送的url:" + url);        CloseableHttpResponse response = null;        ///获得Http客户端        CloseableHttpClient client = HttpClients.createDefault();        List<NameValuePair> parameters = new ArrayList<NameValuePair>();        for (Map.Entry<String, String> entry : map.entrySet()) {            System.out.println("key = " + entry.getKey() + ", value = " + entry.getValue());            parameters.add(new BasicNameValuePair(entry.getKey(),entry.getValue()));        }        UrlEncodedFormEntity formEntity = new UrlEncodedFormEntity(parameters);// 配置信息// 设置连接超时时间(单位毫秒)// 设置请求超时时间(单位毫秒)// socket读写超时时间(单位毫秒)        RequestConfig requestConfig = RequestConfig.custom()                .setConnectTimeout(50000).setConnectionRequestTimeout(50000)                .setSocketTimeout(50000).build();        // 向指定资源位置上传内容// 创建Post请求        HttpPost httpPost = new HttpPost(url);        httpPost.setConfig(requestConfig);        httpPost.addHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");        httpPost.setEntity(formEntity);        try {            response = client.execute(httpPost);            // 通过response中的getEntity()方法获取返回值            HttpEntity entity = response.getEntity();            if (entity != null) {                body = EntityUtils.toString(entity, encoding);            }        } catch (Exception e) {            // TODO: handle exception            e.printStackTrace();        } finally {            httpPost.abort();            if (response != null) {                EntityUtils.consumeQuietly(response.getEntity());            }        }        log.info("body:" + body);        return body;    }

代码其实就是这么多,还有好多形式。大家可以参考写一下。

java的HttpClient调用远程接口

httpClient比jdk自带的URLConection更加易用和方便,这里介绍一下使用httpClient来调用远程接口。

首先导入相关的依赖包:

<!-- httpClient -->        <dependency>            <groupId>org.apache.httpcomponents</groupId>            <artifactId>httpclient</artifactId>            <version>4.5.3</version>        </dependency>

使用方法

1,创建HttpClient对象;

2,指定请求URL,并创建请求对象,如果是get请求则创建HttpGet对象,post则创建HttpPost对象;

3,如果请求带有参数,对于get请求可直接在URL中加上参数请求,或者使用setParam(HetpParams params)方法设置参数,对于HttpPost请求,可使用setParam(HetpParams params)方法或者调用setEntity(HttpEntity entity)方法设置参数;

4,调用httpClient的execute(HttpUriRequest request)执行请求,返回结果是一个response对象;

5,通过response的getHeaders(String name)或getAllHeaders()可获得请求头部信息,getEntity()方法获取HttpEntity对象,该对象包装了服务器的响应内容。

实例

我使用了property文件来保存不同API对应的链接,也可以除去properties文件的读取代码,直接将变量 API换成所需URL

import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.net.URL;import java.util.Map;import java.util.Properties; import org.apache.http.client.methods.CloseableHttpResponse;import org.apache.http.client.methods.HttpGet;import org.apache.http.impl.client.CloseableHttpClient;import org.apache.http.impl.client.HttpClients;import org.apache.http.util.EntityUtils; public class APIUtil { public static String API(String APIName, Map<String, Object> params) { String content = ""; //请求结果                  CloseableHttpResponse response = null;  //实例化httpclient                  CloseableHttpClient httpclient = HttpClients.createDefault();                     try {         //读取配置文件的URL                Properties properties = new Properties();                URL fileURL = APIUtil.class.getClassLoader().getResource("api.properties");properties.load(new FileInputStream(new File(fileURL.getFile())));String API = properties.getProperty(APIName);        //构造url请求        StringBuilder url = new StringBuilder(API);        if(params!=null && params.size()>0) {        url.append("?");        for(Map.Entry<String, Object> entry : params.entrySet()) {            url.append(entry.getKey()+"="+entry.getValue()+"&");            }        url.substring(0, url.length()-1);        }        //实例化get方法          HttpGet httpget = new HttpGet(url.toString());         //执行get请求response = httpclient.execute(httpget);if(response.getStatusLine().getStatusCode()==200) {content = EntityUtils.toString(response.getEntity(),"utf-8");}} catch (IOException e) {e.printStackTrace();}        return content;    }}

执行完毕后返回API提供的数据。

到此,关于“java怎么使用HttpClient调用接口”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

java怎么使用HttpClient调用接口

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

java怎么使用HttpClient调用接口

这篇文章主要介绍“java怎么使用HttpClient调用接口”,在日常操作中,相信很多人在java怎么使用HttpClient调用接口问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”java怎么使用HttpC
2023-07-04

java中如何使用HttpClient调用接口

这篇文章主要介绍了java中如何使用HttpClient调用接口,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
2022-11-13

JAVA中的HTTPS接口怎么利用HttpClient进行调用

JAVA中的HTTPS接口怎么利用HttpClient进行调用?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。1.为了避免需要证书,所以用一个类继承DefaultHttpClie
2023-05-31

使用HttpClient调用接口的实例讲解

一,编写返回对象public class HttpResult {// 响应的状态码private int code;// 响应的响应体private String body;get/set…}
2023-05-31

Java HttpClient怎么使用

今天小编给大家分享一下Java HttpClient怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1、导入依赖
2023-07-02

java 接口怎么调用

一个类实现了某一个接口就可以调用接口中的方法。接口可以理解为一种能力,例如:每种动物都有叫的能力,但是每种动物的叫声都不一样,叫的能力就可以定义为一个接口。一、创建项目和包打开Eclipse,依次选择File→New→Project。在弹出的Select a
java 接口怎么调用
2018-03-09

nodejs怎么调用java接口

要在Node.js中调用Java接口,有几种方法可以实现:1. 通过child_process模块调用Java进程:可以使用child_process模块来启动一个Java进程,并通过命令行参数将Java接口的类和方法名传递给Java进程。
2023-08-17

java怎么调用dubbo接口

要调用 Dubbo 接口,需要遵循以下步骤:1. 首先,确保你已经引入了 Dubbo 的相关依赖。2. 创建一个 Dubbo 的配置文件,例如 dubbo.xml,在该文件中配置 Dubbo 的相关参数,例如服务的地址、端口等。3. 在你的
2023-10-18

java怎么调用asmx接口

要调用ASMX接口,可以通过Java的WebService客户端工具生成相应的客户端代码。首先,确保已在项目中添加了相关的JAX-WS库。然后,可以按照以下步骤进行操作:使用`wsimport`命令生成客户端代码。在命令行中执行以下命令,
java怎么调用asmx接口
2023-10-30

java怎么调用wsdl接口

要调用一个WSDL接口,你可以使用Java的WebService客户端来实现。下面是一个使用Java的WebService客户端调用WSDL接口的示例代码:import javax.xml.namespace.QName;import
java怎么调用wsdl接口
2024-02-29

java怎么调用restful接口

Java可以使用多种方式调用RESTful接口,以下是其中几种常见的方法:1. 使用Java原生的HttpURLConnection类来发送HTTP请求:```javaimport java.io.BufferedReader;import
2023-09-15

java callable接口怎么调用

要调用Java Callable接口,可以使用ExecutorService类的submit()方法来提交Callable对象,并返回一个Future对象。以下是一个简单的示例代码:import java.util.concurrent
2023-10-24

java怎么调用soap接口

要调用SOAP接口,可以使用Java中的SOAP客户端库,如JAX-WS(Java API for XML Web Services)。下面是调用SOAP接口的基本步骤:创建一个SOAP客户端工程。可以使用Eclipse等集成开发环境(I
java怎么调用soap接口
2024-02-29

unity怎么调用java接口

在Unity中调用Java接口需要使用到Android的Java Native Interface(JNI)来实现。下面是一个简单的示例:1. 在Unity中创建一个C#脚本,用于调用Java接口:```c#using UnityEngin
2023-09-20

Java原生HttpClient怎么使用

这篇文章主要介绍“Java原生HttpClient怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Java原生HttpClient怎么使用”文章能帮助大家解决问题。1.信任证书管理类packa
2023-06-29

外部项目接口工具类怎么利用HttpClient进行调用

今天就跟大家聊聊有关外部项目接口工具类怎么利用HttpClient进行调用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。具体方法如下:import java.io.IOExcepti
2023-05-31

java中Cloneable接口怎么调用

在Java中,Cloneable接口是一个标记接口,它没有任何方法。要使用Cloneable接口,只需要在要克隆的类上实现该接口即可。下面是实现Cloneable接口并进行克隆的示例代码:```javapublic class MyClas
2023-09-26

怎么使用javascript调用c接口

今天小编给大家分享一下怎么使用javascript调用c接口的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。第一步:创建C接口
2023-07-06

Python、JAVA、PHP怎么调用api接口

这篇文章主要讲解了“Python、JAVA、PHP怎么调用api接口”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python、JAVA、PHP怎么调用api接口”吧!返回说明:{"stat
2023-06-04

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录