java使用httpcomponents发送get请求

简介: 一、适用场景   在ESTful webservice中,get方法一般都是用来获取数据。我们可以使用httpcomponents组件来完成调用。   如我们需要发起get请求,携带的参数都是附加到请求的url后面。

一、适用场景

  在ESTful webservice中,get方法一般都是用来获取数据。我们可以使用httpcomponents组件来完成调用。

  如我们需要发起get请求,携带的参数都是附加到请求的url后面。

  url:"http://www.xxxxx.com/message?id=000010"

二、代码示例

 

 1 package com.demo.test;
 2 
 3 import java.io.IOException;
 4 
 5 import org.apache.http.HttpEntity;
 6 import org.apache.http.HttpStatus;
 7 import org.apache.http.client.ClientProtocolException;
 8 import org.apache.http.client.methods.CloseableHttpResponse;
 9 import org.apache.http.client.methods.HttpGet;
10 import org.apache.http.impl.client.CloseableHttpClient;
11 import org.apache.http.impl.client.HttpClients;
12 import org.apache.http.util.EntityUtils;
13 
14 public class Test2 {
15 
16     public static String sendInfo(String url, String param) {
17         String geturl = String.format("%s?id=%s", url, param);
18         CloseableHttpClient client = HttpClients.createDefault();
19         HttpGet get = new HttpGet(geturl);
20         String responseContent = null; // 响应内容
21         CloseableHttpResponse response = null;
22         try {
23             response = client.execute(get);
24             HttpEntity entity = response.getEntity();// 响应体
25             if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {// 正确返回
26                 responseContent = EntityUtils.toString(entity, "UTF-8");
27             }
28         } catch (ClientProtocolException e) {
29             e.printStackTrace();
30         } catch (IOException e) {
31             e.printStackTrace();
32         } finally {
33             try {
34                 if (response != null)
35                     response.close();
36                 if (client != null)
37                     client.close();
38             } catch (IOException e) {
39                 e.printStackTrace();
40             }
41         }
42         return responseContent;
43     }
44 
45     public static void main(String[] args) {
46         String param = "000010";
47         String result = sendInfo("http://www.xxxxx.com/message", param);
48         System.out.println(result);
49     }
50 }

  请求成功后,后天会打印返回的信息。

目录
相关文章
|
3月前
|
Java
Java aop 如何获取请求头里的token
【8月更文挑战第13天】Java aop 如何获取请求头里的token
142 0
|
4月前
|
运维 监控 算法
java实现一个动态监控系统,监控接口请求超时的趋势
java实现一个动态监控系统,监控接口请求超时的趋势
234 2
|
26天前
|
Java
让星星⭐月亮告诉你,Java NIO之Buffer详解 属性capacity/position/limit/mark 方法put(X)/get()/flip()/compact()/clear()
这段代码演示了Java NIO中`ByteBuffer`的基本操作,包括分配、写入、翻转、读取、压缩和清空缓冲区。通过示例展示了`position`、`limit`和`mark`属性的变化过程,帮助理解缓冲区的工作原理。
23 2
|
1月前
|
JSON Java 数据格式
java操作http请求针对不同提交方式(application/json和application/x-www-form-urlencoded)
java操作http请求针对不同提交方式(application/json和application/x-www-form-urlencoded)
52 1
|
2月前
|
JSON 前端开发 JavaScript
java中post请求调用下载文件接口浏览器未弹窗而是返回一堆json,为啥
客户端调接口需要返回另存为弹窗,下载文件,但是遇到的问题是接口调用成功且不报错,浏览器F12查看居然返回一堆json,而没有另存为弹窗; > 正确的效果应该是:接口调用成功且浏览器F12不返回任何json,而是弹窗另存为窗口,直接保存文件即可。
128 2
|
1月前
|
小程序 Java
小程序通过get请求提交数据到java后台
小程序通过get请求提交数据到java后台
28 0
|
3月前
|
数据采集 人工智能 监控
【Azure 应用程序见解】Application Insights Java Agent 3.1.0的使用实验,通过修改单个URL的采样率来减少请求及依赖项的数据采集
【Azure 应用程序见解】Application Insights Java Agent 3.1.0的使用实验,通过修改单个URL的采样率来减少请求及依赖项的数据采集
|
3月前
|
安全 Java 数据库连接
|
4月前
|
数据采集 Web App开发 Java
Java爬虫安全策略:防止TikTok音频抓取过程中的请求被拦截
Java爬虫安全策略:防止TikTok音频抓取过程中的请求被拦截
|
4月前
|
存储 安全 Java
Java面试题:假设你正在开发一个Java后端服务,该服务需要处理高并发的用户请求,并且对内存使用效率有严格的要求,在多线程环境下,如何确保共享资源的线程安全?
Java面试题:假设你正在开发一个Java后端服务,该服务需要处理高并发的用户请求,并且对内存使用效率有严格的要求,在多线程环境下,如何确保共享资源的线程安全?
67 0