Fetch работает на локальном сервере, но не на онлайн-сервере, и только для одного вызова API - PullRequest
0 голосов
/ 23 января 2019

Реагирующая страница запускает два вызова выборки на мой сервер nodejs. На localhost он работает отлично, но когда я нажимаю на веб, он работает только для одного вызова, но не для другого.

Синтаксис этих вызовов точно такой же. Я проверил операторы MySQL, и они работают в рабочей среде.

Я попытался сделать его синхронным, чтобы он сначала получал вызов, который, кажется, не работает, но все равно выдает тот же erorr:

Unexpected token < in JSON at position 0

Переход к сетевой консоли в Chrome показывает пустой предварительный просмотр для вызова извлечения, который не работает, а тот, который работает, показывает мои данные.

На локальном хосте, но вызовы извлечения показывают данные в предварительном просмотре.

Вот мой синтаксис для совершения вызова:

new Promise((res,rej) =>{
      fetch('/api/call1?id='+id)
      .then(response => response.json())
      .then(call1Data => (
        res(call1Data) )
      ).catch((error) => {
        console.error("error",error);

    })

    }).then((call1Data)=> {

      fetch('/api/call2?id='+id)
        .then(response => response.json())
        .then(call2Data => (

          this.setState({  call2Data: call2Data, call1Data : call1Data))}) , console.log("finished") )
          ).catch((error) => {
          console.error("error",error);

      })
  })

На стороне узла синтаксис для каждого вызова точно такой же, за исключением оператора SQL, который я уже проверял каждый оператор в рабочей среде.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...