新建SpringBoot项目:使用HTTP Client测试接口

传统测试,必须用浏览器,需要频繁切换窗口

也用人用POSTMAN,但也要切换窗口

IDEA自带的HTTP Client

新建一个文件夹http,在其中建立测试文件,后缀为http

发送个请求,写好测试脚本

 

启动应用程序后,直接点击左侧绿色三角按钮

一个技巧,常用代码写入Live template

一个http文件可以设置多个测试请求:

如加一个POST接口

 

修改test.http

 

完整的test.http

GET http://localhost:8880/hello
#Accept: application/json

> {%
// client.test("test-hello", function() {
//   client.log("测试/hello接口");
//   client.log(response.body);
//   client.log(JSON.stringify(response.body)); // 虽然idea没有提示JSON,但是可以用
//   client.assert(response.status === 200, "返回码不是200");
//   client.assert(response.body === "Hello World", "结果验证失败");
// });
%}
###

POST http://localhost:8880/hello/post
Content-Type: application/x-www-form-urlencoded

name=TEST

###

GET http://localhost:8880/test/list

###

GET http://localhost:8880/test/redis/set/123/test
Accept: application/json

###

GET http://localhost:8880/redis/get/15271595887169536
Accept: application/json

###

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
以下是使用SpringBoot创建客户端并使用HTTP/2请求接口的步骤: 1. 添加maven依赖 首先在pom.xml文件中添加以下依赖: ```xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-webflux</artifactId> </dependency> <dependency> <groupId>io.netty</groupId> <artifactId>netty-tcnative-boringssl-static</artifactId> <version>2.0.34.Final</version> </dependency> ``` 这些依赖将为你提供使用HTTP/2的必要组件。 2. 创建WebClient对象 WebClient是Spring WebFlux提供的用于发送HTTP请求的客户端库,可以非常方便地发送HTTP请求并处理响应。创建WebClient对象需要使用ReactorNetty的HttpClient,并将其设置到WebClient的构造函数中。在设置HttpClient时,需要启用对HTTP/2的支持。 ```java import io.netty.handler.ssl.SslContextBuilder; import io.netty.handler.ssl.util.InsecureTrustManagerFactory; import org.springframework.http.client.reactive.ReactorClientHttpConnector; import org.springframework.web.reactive.function.client.WebClient; import reactor.netty.http.client.HttpClient; import javax.net.ssl.SSLException; import java.time.Duration; public class MyClient { public static void main(String[] args) throws SSLException { SslContextBuilder sslContextBuilder = SslContextBuilder.forClient() .trustManager(InsecureTrustManagerFactory.INSTANCE); HttpClient httpClient = HttpClient.create() .secure(sslContextSpec -> sslContextSpec.sslContext(sslContextBuilder)) .protocol(HttpClient.HttpProtocol.H2) .responseTimeout(Duration.ofSeconds(5)); ReactorClientHttpConnector connector = new ReactorClientHttpConnector(httpClient); WebClient client = WebClient.builder() .clientConnector(connector) .build(); // 使用client发送请求 } } ``` 在这里,我们首先使用SslContextBuilder创建一个SSL上下文,以便我们可以在不验证服务器证书的情况下与服务器建立安全连接。然后,我们使用HttpClient.create()创建一个HttpClient实例,并启用了对HTTP/2的支持,同时设置了响应超时时间。接下来,我们使用ReactorClientHttpConnector将HttpClient连接到WebClient中。最后,我们使用WebClient.builder()创建一个WebClient实例,并将ReactorClientHttpConnector设置为其连接器。 3. 发送HTTP请求 创建WebClient对象后,我们可以使用其get()、post()、put()、delete()等方法发送HTTP请求。 例如,我们可以使用以下代码向http://localhost:8080/hello发送一个HTTP GET请求: ```java Mono<String> result = client.get() .uri("http://localhost:8080/hello") .retrieve() .bodyToMono(String.class); result.subscribe(System.out::println); ``` 在这里,我们使用WebClienthttp://localhost:8080/hello发送了一个HTTP GET请求,并将响应体转换为Mono<String>对象,然后异步订阅它并打印结果。 总之,以上是使用SpringBoot创建客户端并使用HTTP/2请求接口的基本步骤。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值