Javascript获取未读取JSON文件
我正在使用ES6和Fetch 这给了我一个错误:Javascript获取未读取JSON文件,javascript,ecmascript-6,fetch,Javascript,Ecmascript 6,Fetch,我正在使用ES6和Fetch 这给了我一个错误: Uncaught (in promise) SyntaxError: Unexpected token < in JSON at position 0 下面是list.json中的数据: [ { "id": 1, "name": "name1" }, { "id": 2, "name": "name2" } ] 为什么会出现此错误以及如何修复此错误?这不是有效的JSON文件。有效的JSON
Uncaught (in promise) SyntaxError: Unexpected token < in JSON at position 0
下面是list.json中的数据:
[
{
"id": 1,
"name": "name1"
},
{
"id": 2,
"name": "name2"
}
]
为什么会出现此错误以及如何修复此错误?这不是有效的JSON文件。有效的JSON如下所示
{
"data":[
{
"id": 1,
"name": "name1"
},
{
"id": 2,
"name": "name2"
}
]
}
您没有发送一个被.JSON方法正确理解的JSON,您应该按照上面提到的方式进行转换,一切都应该很好 正确的JSON:
{ "products" : [
{ "Name": "Cheese", "Price" : 2.50, "Location": "Refrigerated foods"},
{ "Name": "Crisps", "Price" : 3, "Location": "the Snack isle"},
{ "Name": "Pizza", "Price" : 4, "Location": "Refrigerated foods"},
{ "Name": "Chocolate", "Price" : 1.50, "Location": "the Snack isle"},
{ "Name": "Self-raising flour", "Price" : 1.50, "Location": "Home baking"},
{ "Name": "Ground almonds", "Price" : 3, "Location": "Home baking"}
]}
响应不是JSON,而是html。可能是一条错误消息。看看控制台,我猜服务器正在以HTML页面的形式返回一个错误。你能检查一下你得到的答复吗?(例如Chrome开发工具中的Networking选项卡)fetch似乎获得了一个HTML文件,您是否有404 HTML文件或类似的文件?当I console.log(响应)时;它说TYPE:is basict不是有效的JSON。JSON应该总是以大括号开头。
{ "products" : [
{ "Name": "Cheese", "Price" : 2.50, "Location": "Refrigerated foods"},
{ "Name": "Crisps", "Price" : 3, "Location": "the Snack isle"},
{ "Name": "Pizza", "Price" : 4, "Location": "Refrigerated foods"},
{ "Name": "Chocolate", "Price" : 1.50, "Location": "the Snack isle"},
{ "Name": "Self-raising flour", "Price" : 1.50, "Location": "Home baking"},
{ "Name": "Ground almonds", "Price" : 3, "Location": "Home baking"}
]}