在Spring Boot中,可以使用RestTemplate或Feign来调用外部接口。
1. RestTemplate调用外部接口:
```java
@Autowired
private RestTemplate restTemplate;
public void callExternalApi() {
String url = "http://external-api.com/api/endpoint";
HttpHeaders headers = new HttpHeaders();
headers.set("Authorization", "Bearer token");
HttpEntity
ResponseEntity
if (response.getStatusCode() == HttpStatus.OK) {
String responseBody = response.getBody();
// 处理响应结果
} else {
// 处理错误状态码
}
}
```
需要在Spring Boot配置类中配置RestTemplate Bean:
```java
@Bean
public RestTemplate restTemplate() {
return new RestTemplate();
}
```
2. 使用Feign调用外部接口:
首先在pom.xml中添加Feign依赖:
```xml
```
然后创建一个Feign客户端接口:
```java
@FeignClient(name = "external-api", url = "http://external-api.com")
public interface ExternalApiClient {
@GetMapping("/api/endpoint")
String callExternalApi();
}
```
在需要调用外部接口的地方注入ExternalApiClient接口,并调用对应的方法:
```java
@Autowired
private ExternalApiClient externalApiClient;
public void callExternalApi() {
String response = externalApiClient.callExternalApi();
// 处理响应结果
}
```
同时,需要在启动类上添加@EnableFeignClients注解来启用Feign。
以上是使用RestTemplate和Feign两种常用的方法来调用外部接口,具体选择哪种方式取决于需求和个人喜好。