반응형
spring boot web-client에서 콘텐츠타입 어플리케이션/x-www-form-urlencoded 폼 데이터 요청을 게시하는 방법
스프링 부츠 사용법webclient콘텐츠 타입의 투고 요청용application/x-www-form-urlencoded콘텐츠 타입이 application/x-www-form-urlencoded인 샘플컬 요구
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'username=XXXX' \
--data-urlencode 'password=XXXX'
webclient를 사용하여 동일한 요청을 발송하려면 어떻게 해야 합니까?
이 목적을 위해 사용할 수 있습니다.
webClient client = WebClient.builder()
.baseUrl("SOME-BASE-URL")
.defaultHeader(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_FORM_URLENCODED_VALUE)
.build();
return client.post()
.uri("SOME-URI)
.body(BodyInserters.fromFormData("username", "SOME-USERNAME")
.with("password", "SONE-PASSWORD"))
.retrieve()
.bodyToFlux(SomeClass.class)
.onErrorMap(e -> new MyException("messahe",e))
.blockLast();
다른 형식으로:
MultiValueMap<String, String> formData = new LinkedMultiValueMap<>();
formData.add("username", "XXXX");
formData.add("password", "XXXX");
String response = WebClient.create()
.post()
.uri("URL")
.contentType(MediaType.APPLICATION_FORM_URLENCODED)
.body(BodyInserters.fromFormData(formData))
.exchange()
.block()
.bodyToMono(String.class)
.block();
소견으로는 간단한 요청으로 REST Assured가 더 사용하기 쉽습니다.
언급URL : https://stackoverflow.com/questions/59792224/how-to-post-request-with-spring-boot-web-client-for-form-data-for-content-type-a
반응형
'programing' 카테고리의 다른 글
| 각도에서는 페이지 변경과 같은 사용자 이벤트에서 $interval을 취소하려면 어떻게 해야 합니까? (0) | 2023.03.10 |
|---|---|
| Next.js 글로벌 CSS는 커스텀 이외의 파일에서 Import할 수 없습니다. (0) | 2023.03.10 |
| 콘솔에 표시:네트워크 속도가 느리다.로드하는 동안 예비 글꼴이 사용됩니다. (0) | 2023.03.10 |
| 키와 값의 페어를 타입 스크립트에서 사용할 수 있습니까? (0) | 2023.03.10 |
| 부트스트랩:드롭다운 탐색 부모 링크를 활성화하려면 어떻게 해야 합니까? (0) | 2023.03.05 |