|
@@ -31,7 +31,7 @@ public class RequestComponent {
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* -- GETTER --
|
|
* -- GETTER --
|
|
|
- * 获取webClient
|
|
|
|
|
|
|
+ * 获取webClient
|
|
|
*
|
|
*
|
|
|
* @return webClient
|
|
* @return webClient
|
|
|
*/
|
|
*/
|
|
@@ -61,8 +61,7 @@ public class RequestComponent {
|
|
|
* @return 响应返回值
|
|
* @return 响应返回值
|
|
|
*/
|
|
*/
|
|
|
private <Response> Response bodyIsEmpty(ResponseEntity<Response> responseEntity, String description) {
|
|
private <Response> Response bodyIsEmpty(ResponseEntity<Response> responseEntity, String description) {
|
|
|
- return Optional
|
|
|
|
|
- .ofNullable(responseEntity)
|
|
|
|
|
|
|
+ return Optional.ofNullable(responseEntity)
|
|
|
.map(ResponseEntity::getBody)
|
|
.map(ResponseEntity::getBody)
|
|
|
.orElseThrow(() -> new SystemException(description + "请求异常"));
|
|
.orElseThrow(() -> new SystemException(description + "请求异常"));
|
|
|
}
|
|
}
|
|
@@ -79,8 +78,7 @@ public class RequestComponent {
|
|
|
* @return 响应
|
|
* @return 响应
|
|
|
*/
|
|
*/
|
|
|
public <Response> Response get(String url, Map<String, Object> param, String description, Class<Response> responseClass, HttpHeaders headers) {
|
|
public <Response> Response get(String url, Map<String, Object> param, String description, Class<Response> responseClass, HttpHeaders headers) {
|
|
|
- ResponseEntity<Response> responseEntity = webClient
|
|
|
|
|
- .get()
|
|
|
|
|
|
|
+ ResponseEntity<Response> responseEntity = webClient.get()
|
|
|
.uri(url, param)
|
|
.uri(url, param)
|
|
|
.headers(setHeaders(headers))
|
|
.headers(setHeaders(headers))
|
|
|
.retrieve()
|
|
.retrieve()
|
|
@@ -89,9 +87,17 @@ public class RequestComponent {
|
|
|
return bodyIsEmpty(responseEntity, description);
|
|
return bodyIsEmpty(responseEntity, description);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
|
+ * @param url 请求地址
|
|
|
|
|
+ * @param param get 拼接对象
|
|
|
|
|
+ * @param description 描述信息
|
|
|
|
|
+ * @param bodyTypeReference 响应类 泛型
|
|
|
|
|
+ * @param headers 请求头
|
|
|
|
|
+ * @param <Response> 响应实体
|
|
|
|
|
+ * @return 响应
|
|
|
|
|
+ */
|
|
|
public <Response> Response get(String url, Map<String, Object> param, String description, ParameterizedTypeReference<Response> bodyTypeReference, HttpHeaders headers) {
|
|
public <Response> Response get(String url, Map<String, Object> param, String description, ParameterizedTypeReference<Response> bodyTypeReference, HttpHeaders headers) {
|
|
|
- ResponseEntity<Response> responseEntity = webClient
|
|
|
|
|
- .get()
|
|
|
|
|
|
|
+ ResponseEntity<Response> responseEntity = webClient.get()
|
|
|
.uri(url, param)
|
|
.uri(url, param)
|
|
|
.headers(setHeaders(headers))
|
|
.headers(setHeaders(headers))
|
|
|
.retrieve()
|
|
.retrieve()
|
|
@@ -120,11 +126,8 @@ public class RequestComponent {
|
|
|
* @return 响应
|
|
* @return 响应
|
|
|
*/
|
|
*/
|
|
|
public <Response> ResponseEntity<Response> post(String url, String body, Class<Response> responseClass, HttpHeaders headers) {
|
|
public <Response> ResponseEntity<Response> post(String url, String body, Class<Response> responseClass, HttpHeaders headers) {
|
|
|
- body = Optional
|
|
|
|
|
- .ofNullable(body)
|
|
|
|
|
- .orElse("");
|
|
|
|
|
- return webClient
|
|
|
|
|
- .post()
|
|
|
|
|
|
|
+ body = Optional.ofNullable(body).orElse("");
|
|
|
|
|
+ return webClient.post()
|
|
|
.uri(url)
|
|
.uri(url)
|
|
|
.headers(setHeaders(headers))
|
|
.headers(setHeaders(headers))
|
|
|
.body(BodyInserters.fromValue(body))
|
|
.body(BodyInserters.fromValue(body))
|
|
@@ -133,6 +136,26 @@ public class RequestComponent {
|
|
|
.block();
|
|
.block();
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
|
+ * @param url 请求地址
|
|
|
|
|
+ * @param body 请求体
|
|
|
|
|
+ * @param bodyTypeReference 泛型响应类
|
|
|
|
|
+ * @param headers 请求头
|
|
|
|
|
+ * @param <Response> 响应实体
|
|
|
|
|
+ * @return 响应
|
|
|
|
|
+ */
|
|
|
|
|
+ public <Response> Response post(String url, Object body, String description, ParameterizedTypeReference<Response> bodyTypeReference, HttpHeaders headers) {
|
|
|
|
|
+ String requestBody = JSON.toJSONString(body);
|
|
|
|
|
+ ResponseEntity<Response> responseEntity = webClient.post()
|
|
|
|
|
+ .uri(url)
|
|
|
|
|
+ .body(BodyInserters.fromValue(requestBody))
|
|
|
|
|
+ .headers(setHeaders(headers))
|
|
|
|
|
+ .retrieve()
|
|
|
|
|
+ .toEntity(bodyTypeReference)
|
|
|
|
|
+ .block();
|
|
|
|
|
+ return bodyIsEmpty(responseEntity, description);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
* @param url 请求地址
|
|
* @param url 请求地址
|
|
|
* @param body 请求体
|
|
* @param body 请求体
|