api spring-boot spring-data retrofit

api - swagger 2



Llama a otra api de descanso desde mi servidor en Spring-Boot (2)

En lugar de String, está intentando obtener detalles de objetos POJO personalizados como salida llamando a otra API / URI , intente con esta solución. Espero que sea claro y útil sobre cómo usar RestTemplate también,

En Spring Boot , primero necesitamos crear Bean para RestTemplate en la clase anotada @Configuration . Incluso puede escribir una clase separada y anotar con @Configuration como a continuación.

@Configuration public class RestTemplateConfig { @Bean public RestTemplate restTemplate(RestTemplateBuilder builder) { return builder.build(); } }

Luego, debe definir RestTemplate con @Autowired o @Injected bajo su servicio / controlador, donde quiera que esté tratando de usar RestTemplate. Utilice el siguiente código,

@Autowired private RestTemplate restTemplate;

Ahora, veré la parte de cómo llamar a otra api desde mi aplicación usando RestTemplate creado anteriormente. Para esto podemos usar múltiples métodos como execute () , getForEntity () , getForObject () y etc. Aquí coloco el código con el ejemplo de execute (). Incluso probé otros dos, me enfrenté al problema de convertir el LinkedHashMap devuelto en el objeto POJO esperado. El siguiente método, ejecute () solucionó mi problema.

ResponseEntity<List<POJO>> responseEntity = restTemplate.exchange(URL, HttpMethod.GET, null, new ParameterizedTypeReference<List<POJO>>() { }); List<POJO> pojoObjList = responseEntity.getBody();

Feliz codificación :)

Quiero llamar a otra web-api desde mi backend a una solicitud específica del usuario. por ejemplo, quiero llamar a google FCM enviar un mensaje a la API para enviar un mensaje a un usuario específico en un evento.

¿ Retrofit tiene algún método para lograr esto? O si no, ¿cómo puedo hacer eso?


Este sitio web tiene algunos buenos ejemplos para usar RestTemplate de Spring. Este es un ejemplo de código de cómo puede funcionar para obtener un objeto simple:

private static void getEmployees() { final String uri = "http://localhost:8080/springrestexample/employees.xml"; RestTemplate restTemplate = new RestTemplate(); String result = restTemplate.getForObject(uri, String.class); System.out.println(result); }