Топор ios получает ответные заголовки. Работает в узле, а не в реакции - PullRequest
0 голосов
/ 08 марта 2020

Начну с того, что это не имеет ничего общего с аутентификацией токенов JWT.

Я пытаюсь получить данные из API публикации c. Давайте назовем это www.abc.com/WeatherAPI.

Когда я делаю это в узле с топором ios, используя axios.get(url), я могу console.log(res.headers), и они отлично отображаются (они нужны мне для разбиения на страницы и рекурсивной функции )

Когда я использую ТОЧНЫЙ ЖЕ код в реакции, мне возвращаются пустые заголовки .... например: content-type: "application/json" date: "Sun, 08 Mar 2020 09:23:03 GMT"

Код:

    return axios
      .get(
        'https://api.xxxxxxxx' +
          (cursor ? '&cursor=' + cursor : '')
      )
      .then(res => {
        console.log(res);
        console.log(res.headers['cursor']);
        // If there is no data, return...
        if (res.data.length < 1) return;

        // Push current data into OB state
        setOB({ ...oB, ...res.data });
        //te

        //If there is no cursor... ie there is no more data, return
        if (!res.headers['cursor']) return;


        return OB(res.headers['cursor']);
      });
  };

  // I dont know if use effect is right here... we will see..
  useEffect(() => {
    OB();
  }, []);`

1 Ответ

0 голосов
/ 08 марта 2020

, поскольку API опубликован c, возможно, заголовок ответа отличается в зависимости от агента. это вряд ли так, но может быть. Я бы предложил переопределить объект заголовков, включая User-Agent

axios.get(
   `https://api.xxxxxxxx${cursor ? '&cursor=' + cursor : ''}`,
    { headers: { 'User-Agent': 'YOUR-SERVICE-NAME' }  },
).then()...
...