#javascript
#javascript
Вопрос:
У меня есть этот файл json, который я пытаюсь прочитать с помощью JS, но он возвращает синтаксическую ошибку: неожиданный токен в строке 2 «:»
Откуда может взяться эта ошибка?
fetch('../json/destinations_data.json')
.then(response => response.text())
.then(data => {
window.alert(data);
console.log(data);
});
{
"user1":{
"email":"lucien.bramare@gmail.com",
"password":"oss117",
"prenom":"Lucien",
"nom":"Bramare"
},
"user2":{
"email":"noel.flantier@gmail.com",
"password":"oss117",
"prenom":"Noël",
"nom":"Flantier"
}
}
Ответ №1:
Вы анализируете его как текст, а не как JSON.
fetch('../json/destinations_data.json')
.then(response => response.json()) //<-- do this!
.then(data => {
window.alert(data);
console.log(data);
});
Ответ №2:
Вы читаете файл json, поэтому вместо использования response.text()
use response.json()
fetch('../json/destinations_data.json')
.then(response => response.json())
.then(data => {
window.alert(data);
console.log(data);
});
Ответ №3:
В вашем json-файле имеется синтаксическая ошибка. Вы должны изменить свой формат. Пожалуйста, проверьте https://www.w3schools.com/js/js_json.asp
users = [
{
"email":"lucien.bramare@gmail.com",
"password":"oss117",
"prenom":"Lucien",
"nom":"Bramare"
},
{
"email":"noel.flantier@gmail.com",
"password":"oss117",
"prenom":"Noël",
"nom":"Flantier"
}
];
Ответ №4:
Попробуйте проанализировать его как json, а не как текст
замените это
.then(response => response.text())
с помощью этого
.then(response => response.json())