...
¡Ojo! Por defecto, las llamadas con WebClient son asíncronas, no bloqueantes. La instrucción block() del final sirve para hacerlas bloqueantes, para esperar a la respuesta antes de seguir.
Body con Content-Type: application/x-www-form-urlencoded
Para este caso, hay que meter el body utilizando BodyInserters.fromFormData, pasándole un MultiValueMap. Por ejemplo:
| Bloque de código | ||
|---|---|---|
| ||
MultiValueMap<String, String> bodyForm = new LinkedMultiValueMap<>();
bodyForm.add("login", "correo@prueba.com");
bodyForm.add("clave", "AAERRasdfasdf1asd2asdfasdf:34adsad");
bodyForm.add("nomape", "MESSI");
bodyForm.add("tipo", "externa");
bodyForm.add("validar", "no");
String response = webClient.post()
.uri(metodo).body(BodyInserters.fromFormData(bodyForm))
.retrieve()
.bodyToMono(String.class)
.block(); |
Gestionar código de respuesta
...