Foro de elhacker.net

Programación => Java => Mensaje iniciado por: Beginner Web en 4 Mayo 2021, 23:15 pm



Título: spring boot consumo de apis de rapidapi
Publicado por: Beginner Web en 4 Mayo 2021, 23:15 pm
Hola como se consumen apis de rapidapi en spring boot usando Java y teniendo en cuenta que use separacion de capa modelo controlador servicio y repositorio?  :silbar:  ;-) ;-) ;-)


Título: Re: spring boot consumo de apis de rapidapi
Publicado por: rub'n en 4 Mayo 2021, 23:26 pm
Hola como se consumen apis de rapidapi en spring boot usando Java y teniendo en cuenta que use separacion de capa modelo controlador servicio y repositorio?  :silbar:  ;-) ;-) ;-)

Investiga sobre RestTemplate( sincrono)  o WebClient( es analogo del RestTemplate pero versión reactiva )


Título: Re: spring boot consumo de apis de rapidapi
Publicado por: WHK en 5 Mayo 2021, 00:40 am
Debes hacer un modelo de datos y crear un intermediario a modo de DTO entre tu cliente http y tu modelo de capa de negocio, necesitas una capa de servicio que a su ves llame a un helper que haga la solicitud http y este retorne un objeto response y desde la capa de negocio debes obtener parámetro por parámetro e irlos llenando al DTO y retornarlo a la capa de presentación o reutilizarlo desde otras capas.

Debes tener cuidado, evalúa primeramente la frecuencia de uso de la función de capa de negocio, si es muy alta entonces es mejor crear un servicio que llame cada x segundos a la api y lo almacene en una variable con un dto y que tu capa de servicio vaya a buscar a ese dto en ves de hacer la solicitud a la api, eso disminuirá la carga si te hacen un ddos o tienes muchos usuarios conectados. Si vas a crear el servicio debes crear un proceso asyncrónico y configurar el timeout del cliente para evitar threads en cola en caso de que la solicitud a la api falle.

Mira, acá hay instrucciones oficiales de rapidapi: https://rapidapi.com/blog/how-to-build-an-api-with-java/

Saludos.