📅  最后修改于: 2023-12-03 15:32:43.835000             🧑  作者: Mango
Cuando se desarrolla una aplicación web compleja, es común que se requieran varias APIs para obtener diferentes tipos de información o realizar diferentes acciones. En este caso, es posible que necesite llamar a otro back-end desde su back-end actual. A continuación, se muestra un ejemplo de cómo hacerlo en JavaScript.
Request
El primer paso es instalar la biblioteca request
de Node.js. Esta biblioteca le permitirá hacer solicitudes HTTP a otras API desde su back-end actual. Para instalarla, debe ejecutar el siguiente comando en su terminal:
npm install request --save
Una vez que tenga instalada la biblioteca request
, puede usarla para hacer una solicitud HTTP a otra API. En el siguiente ejemplo, haremos una solicitud a la API de Open Weather Map para obtener la temperatura actual en un lugar determinado:
const request = require('request');
const location = 'London';
const url = `http://api.openweathermap.org/data/2.5/weather?q=${location}&appid=YOUR_APP_ID`;
request(url, { json: true }, (err, res, body) => {
if (err) { return console.log(err); }
console.log(`La temperatura actual en ${location} es de ${body.main.temp} grados Kelvin.`)
});
En el ejemplo anterior, estamos usando la biblioteca request
para hacer una solicitud GET a la API de Open Weather Map. La solicitud incluye la ubicación que deseamos obtener y un appid
que podemos obtener al registrarnos en el sitio web de Open Weather Map.
Una vez que se realiza la solicitud HTTP, la biblioteca request
devuelve una respuesta. En general, es una buena práctica procesar los datos de respuesta y enviar solo la información necesaria a su aplicación en lugar de enviar toda la respuesta.
En el siguiente ejemplo, procesamos la respuesta para obtener solo la temperatura actual y devolverla como una respuesta de nuestro back-end:
const request = require('request');
const location = 'London';
const url = `http://api.openweathermap.org/data/2.5/weather?q=${location}&appid=YOUR_APP_ID`;
function getTemperature(callback) {
request(url, { json: true }, (err, res, body) => {
if (err) { return callback(err); }
const temperature = body.main.temp;
callback(null, temperature);
});
}
// Example usage
getTemperature((err, temperature) => {
if (err) { console.error(err) }
console.log(`La temperatura actual en ${location} es de ${temperature} grados Kelvin.`);
});
En este ejemplo, enviamos solo la temperatura actual como respuesta a nuestra aplicación. Usando este patrón, puede hacer solicitudes HTTP a otros back-ends y procesar los datos de respuesta para enviar solo la información necesaria a su aplicación.
¡Y eso es todo! Con estos pasos, ya puede llamar a otro back-end desde su back-end actual en JavaScript.