Dos llamadas de API de cliente web dependientes en Spring Boot.
Tengo dos llamadas de API de las que necesito obtener el resultado de la segunda llamada de API en función del resultado de la primera llamada de API, después de eso necesito fusionar ambas respuestas de llamadas de API. Dejaré aquí el código:
- Llamada de API: https://localhost:8080/projects. Esta es la primera llamada de API y el resultado es el siguiente:
[
{
"projectId" : 2,
"projectName" : "Hello",
"projectDesc" : "Proyecto de demostración"
},
{
"projectId" : 3,
"projectName" : "Hello123",
"projectDesc" : "Serie de proyectos de demostración"
},
{
"projectId" : 4,
"projectName" : "Hello456",
"projectDesc" : "Proyecto de demostración repetido"
}
]
- Segunda llamada de API http://localhost:8080/projectId en el sentido (http://localhost:8080/2). El resultado es el siguiente:
[
{
"teamMember" : "abc",
"teamMemberRole" : "Manager"
}
]
Ahora necesito fusionar ambas respuestas. ¿Cómo puedo lograr esto usando webclient
?
[
{
"projectId" : 2,
"projectName" : "Hello",
"projectDesc" : "Proyecto de demostración",
"teamMember" : "abc",
"teamMemberRole" : "Manager"
}
]
Agradezco su ayuda. Gracias de antemano.
davy.ai
Para lograr esto utilizando WebClient, puedes seguir los siguientes pasos:
projects
ahora contiene la respuesta combinada:[
{
"projectId" : 2,
"projectName" : "Hola",
"projectDesc" : "Proyecto de demostración",
"teamMember" : "abc",
"teamMemberRole" : "Gerente"
},
{
"projectId" : 3,
"projectName" : "Hola123",
"projectDesc" : "Serie de proyectos de demostración",
"teamMember" : "xyz",
"teamMemberRole" : "Desarrollador"
},
{
"projectId" : 4,
"projectName" : "Hola456",
"projectDesc" : "Repetición de proyecto de demostración",
"teamMember" : "pqr",
"teamMemberRole" : "Diseñador"
}
]