Обнаружена ошибка при выполнении внешнего вызова API в Next. js API Route - PullRequest
0 голосов
/ 09 мая 2020

Я пишу маршрут API в следующем. js, который вызовет GitHub API и вернет моего пользователя с ответом GitHub. Мой API - это, по сути, прокси. Однако мой сервер в терминале дает сбой Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client. Что я делаю не так? Ценю вашу помощь, спасибо!

const https = require('https')

export default (req, res) => {
  const options = {
    host: 'api.github.com',
    path: '/search/repositories?q=tetris',
    headers: {'user-agent': 'gohyifan'}
  }
  https.get(options, (ghRes) => {
    ghRes.on('data', (d) => {
      res.json(d);
    });
  }).on('error', (e) => {
    console.error(e);
  });
}

1 Ответ

0 голосов
/ 10 мая 2020

Я сделал это с помощью ax ios, и это сработало. Резьба может быть закрыта.

const axios = require('axios');

async function handler(req, res) {
  const response = await axios.get('https://api.github.com/search/repositories?q=tetris');
  if (response) {
    res.json(response.data);
  } else {
    res.json({});
  }
}

export default handler;
...