我正在尝试向位于项目目录中的JSON文件发出简单的GET请求,并继续收到以下内容: SyntaxError:意外的令牌]
我没有看到我的JavaScript或JSON的任何语法问题。 JSON的路径是正确的,给我304响应。我的JavaScript和JSON非常简单:
JavaScript的:
// app
var app = angular.module('app', []);
// controllers
app.controller('myController', function($scope, $http){
$scope.data = null;
$http.get('data.json').success(function(data){
$scope.data = data;
console.log($scope.data);
});
});
JSON:
{
"data": [
{
"title": "Test 1",
"description": "Fusce vulputate eleifend sapien."
},
{
"title": "Test 2",
"description": "Vivamus laoreet."
},
{
"title": "Test 3",
"description": "Quisque ut nisi."
},
]
}
是什么阻止我从JSON文件中检索数据?
答案 0 :(得分:3)
您的JSON末尾有一个额外的逗号:
{
"data": [
{
"title": "Test 1",
"description": "Fusce vulputate eleifend sapien."
},
{
"title": "Test 2",
"description": "Vivamus laoreet."
},
{
"title": "Test 3",
"description": "Quisque ut nisi."
}, <<<< HERE
]
}
答案 1 :(得分:2)
通常,在JavaScript中,向数组/对象添加额外的逗号不会导致任何问题(例如,在代码编辑器中),即使这不是最佳实践。
但是,由于您在请求中使用此JSON,因此JSON语法必须正确。
删除包含对象的数组末尾的逗号。
{
"data": [
{
"title": "Test 1",
"description": "Fusce vulputate eleifend sapien."
},
{
"title": "Test 2",
"description": "Vivamus laoreet."
},
{
"title": "Test 3",
"description": "Quisque ut nisi."
}
]
}