springboot发送http请求的api
时间: 2023-08-31 17:03:17 浏览: 191
在Spring Boot中,可以使用`RestTemplate`和`WebClient`来发送HTTP请求。这两种方式在Spring Boot中的用法与在Spring中基本相同。
1. `RestTemplate`:可以通过在应用程序中注入`RestTemplate`来使用它。Spring Boot会自动配置`RestTemplate`的实例,可以直接使用。以下是一个示例:
```java
@RestController
public class MyController {
private final RestTemplate restTemplate;
public MyController(RestTemplate restTemplate) {
this.restTemplate = restTemplate;
}
@GetMapping("/example")
public String example() {
String url = "http://example.com/api/resource";
ResponseEntity<String> response = restTemplate.getForEntity(url, String.class);
String responseBody = response.getBody();
return responseBody;
}
}
```
2. `WebClient`:可以通过在应用程序中注入`WebClient.Builder`来创建`WebClient`实例,并使用它发送HTTP请求。以下是一个示例:
```java
@RestController
public class MyController {
private final WebClient.Builder webClientBuilder;
public MyController(WebClient.Builder webClientBuilder) {
this.webClientBuilder = webClientBuilder;
}
@GetMapping("/example")
public Mono<String> example() {
String url = "http://example.com/api/resource";
return webClientBuilder.build().get()
.uri(url)
.retrieve()
.bodyToMono(String.class);
}
}
```
需要注意的是,Spring Boot会自动配置`RestTemplate`和`WebClient`的实例,因此无需任何额外的配置。在使用`RestTemplate`时,可以直接注入它,并使用它的方法发送HTTP请求。在使用`WebClient`时,需要通过`WebClient.Builder`创建`WebClient`实例,并使用链式调用的方式来构建和发送请求。
阅读全文