Реагирующая страница запускает два вызова выборки на мой сервер 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, который я уже проверял каждый оператор в рабочей среде.