Есть пользовательский хук fetch запроса
import { useCallback, useState } from "react"
// STORE imports
import AuthStore from '../mobx/auth.store'
export const useHttp = () => {
const [loading, setLoading] = useState(false)
const [error, setError] = useState(null)
const request = useCallback(async (url, method = 'GET', body = null, headers = {}) => {
setLoading(true)
try {
const response = await fetch(url, {
method,
body,
headers: {
Authorization: `Bearer ${AuthStore.token}`,
...headers
}
})
const data = await response.json() // при выполнении этой строки возникает ошибка
if (!response.ok) {
let message = 'При отправке запроса, что-то пошло не так'
if (typeof data.errors === 'object') {
message = data.errors[0].msg
} else {
message = data.message
}
throw new Error(message)
}
setLoading(false)
return data
} catch (e) {
setLoading(false)
setError(e.message)
throw e
}
}, [])
const clearError = () => setError(null)
return {loading, error, request, clearError}
}
При разработке (npm run start) все работает, но стоит залить проду (npm run build) на любой хостинг/VPS/локалку, возникает ошибка. Ее отлавливает firefox developer edition.
Warning: An unhandled error was caught from submitForm() SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data
В чем может быть проблема?