Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 19.02.2020, 08:02
Новичок на форуме
Отправить личное сообщение для reacter Посмотреть профиль Найти все сообщения от reacter
 
Регистрация: 19.02.2020
Сообщений: 3

Почему получаю ошибку при fetch локального JSON?
Доброго времени суток!
Как правильно сделать fetch локального "data.JSON"?

Сейчас делаю вот так, и получаю ошибку - SyntaxError: Unexpected token < in JSON at position 0

Services.js
export default class ApiService {
    async GetPeople() {
        const request = await fetch('./data.json');
        if(!request.ok) {
            throw new Error('Что-то пошло не так', request.status)
        } else {
            return request.json()
        };
    };
};


Userslist.js (отсюда обращаюсь к services)
import Service from '../../../Services';

const UsersListContainer = () => {

    const api = new Service();

    useEffect(() => {
        api.GetPeople()
        .then(data => console.log(data))
    }, [api])

    return (
        <UsersListView />
    );
};

export default UsersListContainer;
Ответить с цитированием
  #2 (permalink)  
Старый 19.02.2020, 08:49
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,745

Это ошибка в JSON.
Надо его смотреть.
Ответить с цитированием
  #3 (permalink)  
Старый 19.02.2020, 09:17
Новичок на форуме
Отправить личное сообщение для reacter Посмотреть профиль Найти все сообщения от reacter
 
Регистрация: 19.02.2020
Сообщений: 3

JSON
[
	{
		"id": 0,
		"favourite": false,
		"name": "Gilbert Morton",
		"age": 30,
		"phone": "(369) 432-9206",
		"image": "sheep",
		"phrase": "Japman somam mes lizmasapa om zefopi ki wa ogju mofrajnir denba uc famoso opeipu woul.",
		"video": "shoe"
	},
	{
		"id": 1,
		"favourite": true,
		"name": "Jeffery Davidson",
		"age": 57,
		"phone": "(415) 670-6901",
		"image": "pig",
		"phrase": "Lejtefup boc hi ricge tela mo ragdi vutomeh kuhup veosubu pe ceso juhzustum ipagagcub fu."
	}
]
Ответить с цитированием
  #4 (permalink)  
Старый 19.02.2020, 10:58
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,745

Это то, что вы передаете, или то, что получаете?
(Не факт, что это одно и тоже)
Просто в самом сообщении об ошибке говорится, что в JSON обнаружен непредвиденный символ <
Ответить с цитированием
  #5 (permalink)  
Старый 19.02.2020, 11:15
Новичок на форуме
Отправить личное сообщение для reacter Посмотреть профиль Найти все сообщения от reacter
 
Регистрация: 19.02.2020
Сообщений: 3

https://codesandbox.io/s/silly-montalcini-2z146
Не похоже
Ответить с цитированием
  #6 (permalink)  
Старый 19.02.2020, 14:51
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,745

Ну сделай вместо
return request.json()

console.log (await request.text())

И посмотри, что приходит
Ответить с цитированием
  #7 (permalink)  
Старый 19.02.2020, 14:59
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,745

Мне пришло:

<!DOCTYPE html>
<html lang="en">

<head>
<script crossorigin type="text/javascript" src="https://codesandbox.io/static/js/vendors~app~embed~sandbox-startup.963c66368.chunk.js"></script>
<script crossorigin type="text/javascript" src="https://codesandbox.io/static/js/sandbox-startup.1db63978b.js"></script>

<script src="//codesandbox.io/static/browserfs8/browserfs.min.js" type="text/javascript"></script>
.......
Ответить с цитированием
  #8 (permalink)  
Старый 19.02.2020, 16:29
Аватар для Malleys
Профессор
Отправить личное сообщение для Malleys Посмотреть профиль Найти все сообщения от Malleys
 
Регистрация: 20.12.2009
Сообщений: 1,714

Сообщение от reacter
Как правильно сделать fetch локального "data.JSON"?
Этот файл следует поместить в папке public (рядом с index.html), поскольку он не участвует в сборке. При помощи await fetch('./data.json'); вы запрашиваете именно тот файл, который находится в папке public.

https://codesandbox.io/s/optimistic-noether-lubgn
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Распарсить JSON при помощи jQuery fennick AJAX и COMET 3 24.08.2011 19:21
Почему Div не успевает за мышкой при быстром перемещии? PAMAC Общие вопросы Javascript 7 31.01.2011 13:32
Почему в Opera исчезает курсор при нажатии клавиши Esc ? Маэстро Opera, Safari и др. 3 23.11.2010 16:31
IE выдает ошибку при обработке скрипта sailormoon Javascript под браузер 1 10.08.2010 09:20
Как выдавать ошибку при сбросе загрузки страницы? AvaGet Общие вопросы Javascript 2 11.12.2008 19:04