Javascript 从远程url获取主干集合错误
我正在尝试使用从远程url加载的主干来设置模型:。这是我到目前为止所拥有的Javascript 从远程url获取主干集合错误,javascript,json,rest,backbone.js,backbone.js-collections,Javascript,Json,Rest,Backbone.js,Backbone.js Collections,我正在尝试使用从远程url加载的主干来设置模型:。这是我到目前为止所拥有的 var Repo= Backbone.Model.extend({}); var RepoCollection = Backbone.Collection.extend({ url : "https://api.github.com/legacy/repos/search/javascript", model : Repo }); var repos = new RepoCollection();
var Repo= Backbone.Model.extend({});
var RepoCollection = Backbone.Collection.extend({
url : "https://api.github.com/legacy/repos/search/javascript",
model : Repo
});
var repos = new RepoCollection();
repos.fetch({success: function(){
console.log(repos.models);
}});
这只是给了我一个空数组。为什么这不起作用?此url仅包含一个非空JSON数组。我还尝试了parse函数,但没有成功
parse : function(data) {
return data.results;
}
如果github api不支持此类调用,是否有人提供了一个远程url示例,我可以在其中使用主干获取数据
编辑:我应该补充一点,我查看了Chrome上的网络控制台,从github得到了一个200 OK的响应和正确的JSON响应。我想我只是在弄清楚如何访问该数据并用它填充我的RepoCollection时遇到了问题。您可以尝试:
repos.fetch({success: function(data){
console.log(data);
}});
数据包装在
存储库
键中,而不是在结果
中,如下所示
{
"repositories": [
...
]
}
试一试
还有一个演示
var RepoCollection = Backbone.Collection.extend({
url : "https://api.github.com/legacy/repos/search/javascript",
model : Repo,
parse : function(data) {
return data.repositories;
}
});