我是Backbone.js的初學者。 我已經完成了一些教程。如何使用Backbone.js獲取Tweet時間軸?
- http://backbonejs.org/docs/todos.html
- http://coenraets.org/blog/2011/12/backbone-js-wine-cellar-tutorial-part-1-getting-started/
我要創建我自己的非教程應用程序,並嘗試創建簡單的應用程序使用骨幹集合或模型顯示鳴叫時間表。
這是我的代碼。 (oauth.js和sha1.js都包含在HTML)
$(function(){
var Tweet = Backbone.Model.extend({
});
var Twitter = Backbone.Collection.extend({
model: Tweet,
initialize: function(api){
this.consumerKey = //consumerKey;
this.consumerSecret = //consumerSecret;
this.accessToken = //accessToken;
this.accessTokenSecret = //accessTokenSecret;
this.message = {
method: "GET",
action: api,
parameters: {
oauth_version: "1.0",
oauth_signature_method: "HMAC-SHA1",
oauth_consumer_key: this.consumerKey,
oauth_token: this.accessToken
}
};
},
getTimeline: function(){
var accessor = {
consumerSecret: this.consumerSecret,
tokenSecret: this.accessTokenSecret
};
OAuth.setTimestampAndNonce(this.message);
OAuth.SignatureMethod.sign(this.message, accessor);
this.url = OAuth.addToURL(this.message.action, this.message.parameters);
var options = {
success: function(data, res){
console.log(data);
console.log(res);
}
};
this.fetch(options);
},
sync: function(method, model, options){
options.timeout = 10000;
options.dataType = 'jsonp';
return Backbone.sync(method, model, options);
}
});
var twitter = new Twitter("https://api.twitter.com/1.1/statuses/home_timeline.json");
twitter.getTimeline();
});
當我刷新的HTML頁面,但401授權按摩顯示在Chrome開發者工具的控制檯。 我可以得到沒有Backbone.js的時間線。
請教我如何解決它。
謝謝你的好意。
401當''sync''函數中增加'options.jsonp = false'和'options.cache = true'時,授權錯誤消失。但是,「成功」回調並沒有奏效。 – utwang 2013-04-20 11:04:45