Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

348
Visualizações
¿Cómo se puede llamar a una API dos veces (con diferentes parámetros cada vez) con una devolución de llamada y devolver dos respuestas diferentes combinadas en json?

El siguiente código funciona actualmente, pero solo recupera la respuesta JSON de los primeros parámetros.

Me gustaría poder llamar a esta API externa varias veces con diferentes parámetros y combinar las respuestas en una respuesta JSON concatenada.

Tengo dos conjuntos de parámetros que estoy usando en este código, pero realmente tendría más de 200 idealmente. Cualquier ayuda es apreciada.

 const SerpApi = require('google-search-results-nodejs'); const search = new SerpApi.GoogleSearch("674d023b72e91fcdf3da14c730387dcbdb611f548e094bfeab2fff5bd86493fe"); const handlePictures = async (req, res) => { const params1 = { q: "kevin durant", tbm: "isch", }; const params2 = { q: "lou williams", tbm: "isch", }; return new Promise((rs, rj) => { const callback1 = function(data) { // console.log(data); // res.send(data); rs(data); }; // Show result as JSON search.json(params1 , callback1); // how do I get this to work too? ----> search.json(params2, callback1); // res.end(); }) }; module.exports = {handlePictures};
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Puede esperar a que se completen varios trabajos asincrónicos con Promise.all . Digamos que tiene una serie de parámetros de solicitud:

 const reqs = [ { q: 'request one', tbm: 'isch' }, { q: 'request two', tbm: 'isch' }, { q: 'request three', tbm: 'isch' }, ]

Luego, podría usar [].map y Promise.all , y devolver esa promesa en su función.

 const handlePictures = (req, res) => { const reqs = [ { q: 'request one', tbm: 'isch' }, { q: 'request two', tbm: 'isch' }, { q: 'request three', tbm: 'isch' }, ]; // unfortunately the library you're using has no error handling const promises = reqs.map(data => new Promise(resolve => { search.json(data, resolve); })) // this promise resolves when all given promises are resolved return Promise.all(promises); };
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda