建设网站怎么查明细,网站开发用linux好吗,廊坊seo排名公司,杭州seo博客有哪些目录
1、简介
2、应用场景
3、导入
4、API
5、示例
5.1、GET请求
5.2、POST请求 #x1f343;作者介绍#xff1a;双非本科大三网络工程专业在读#xff0c;阿里云专家博主#xff0c;专注于Java领域学习#xff0c;擅长web应用开发、数据结构和算法#xff0c;初…目录
1、简介
2、应用场景
3、导入
4、API
5、示例
5.1、GET请求
5.2、POST请求 作者介绍双非本科大三网络工程专业在读阿里云专家博主专注于Java领域学习擅长web应用开发、数据结构和算法初步涉猎Python人工智能开发和前端开发。 主页逐梦苍穹 ✈ 所属专栏Java Web 您的一键三连是我创作的最大动力 1、简介
HttpClient 是Apache Jakarta Common 下的子项目可以用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包并且它支持 HTTP 协议最新的版本和建议。 HttpClient作用
发送HTTP请求接收响应数据
2、应用场景 为什么要在Java程序中发送Http请求有哪些应用场景呢
HttpClient应用场景
当我们在使用扫描支付、查看地图、获取验证码、查看天气等功能时 其实应用程序本身并未实现这些功能都是在应用程序里访问提供这些功能的服务访问这些服务需要发送HTTP请求并且接收响应数据可通过HttpClient来实现。 3、导入
HttpClient的maven坐标 dependencygroupIdorg.apache.httpcomponents/groupIdartifactIdhttpclient/artifactIdversion4.5.13/version
/dependency 如果SpringBoot项目中已经导入了阿里云oss的坐标则不需要重新导入HttpClient坐标 dependencygroupIdcom.aliyun.oss/groupIdartifactIdaliyun-sdk-oss/artifactId
/dependency 4、API
HttpClient的核心API
HttpClientHttp客户端对象类型使用该类型对象可发起Http请求。HttpClients可认为是构建器可创建HttpClient对象。CloseableHttpClient实现类实现了HttpClient接口。HttpGetGet方式请求类型。HttpPostPost方式请求类型。
5、示例
HttpClient发送请求步骤
创建HttpClient对象创建Http请求对象调用HttpClient的execute方法发送请求
对HttpClient编程工具包有了一定了解后那么我们使用HttpClient在Java程序当中来构造Http的请求并且把请求发送出去接下来就通过入门案例分别发送GET请求和POST请求具体来学习一下它的使用方法。
5.1、GET请求
实现步骤
创建HttpClient对象创建请求对象发送请求接受响应结果解析结果关闭资源 package com.sky.test;import org.apache.http.HttpEntity;
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;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;SpringBootTest
public class HttpClientTest {/*** 测试通过httpclient发送GET方式的请求*/Testpublic void testGET() throws Exception{//创建httpclient对象CloseableHttpClient httpClient HttpClients.createDefault();//创建请求对象HttpGet httpGet new HttpGet(http://localhost:8080/user/shop/status);//发送请求接受响应结果CloseableHttpResponse response httpClient.execute(httpGet);//获取服务端返回的状态码int statusCode response.getStatusLine().getStatusCode();System.out.println(服务端返回的状态码为 statusCode);HttpEntity entity response.getEntity();String body EntityUtils.toString(entity);System.out.println(服务端返回的数据为 body);//关闭资源response.close();httpClient.close();}
} 在访问http://localhost:8080/user/shop/status请求时需要提前启动项目。
测试结果 5.2、POST请求
在HttpClientTest中添加POST方式请求方法相比GET请求来说POST请求若携带参数需要封装请求体对象并将该对象设置在请求对象中。
实现步骤
创建HttpClient对象创建请求对象发送请求接收响应结果解析响应结果关闭资源 /*** 测试通过httpclient发送POST方式的请求*/Testpublic void testPOST() throws Exception{// 创建httpclient对象CloseableHttpClient httpClient HttpClients.createDefault();//创建请求对象HttpPost httpPost new HttpPost(http://localhost:8080/admin/employee/login);JSONObject jsonObject new JSONObject();jsonObject.put(username,admin);jsonObject.put(password,123456);StringEntity entity new StringEntity(jsonObject.toString());//指定请求编码方式entity.setContentEncoding(utf-8);//数据格式entity.setContentType(application/json);httpPost.setEntity(entity);//发送请求CloseableHttpResponse response httpClient.execute(httpPost);//解析返回结果int statusCode response.getStatusLine().getStatusCode();System.out.println(响应码为 statusCode);HttpEntity entity1、 response.getEntity();String body EntityUtils.toString(entity1);System.out.println(响应数据为 body);//关闭资源response.close();httpClient.close();} 测试结果