Я работаю над проектом backbone.js, и я называю свое репетирование github. Я имею мои коллекции и модели bootloaded так что они существуют, как только моя страница построена, но когда я называю model.fetch() Я получаю сообщение: (заменить: имя пользователя с именем пользователя)Как сделать запрос ajax API с помощью CORS и backbonejs
XMLHttpRequest cannot load https://api.github.com/users/:username.
Origin http://mydomain.com is not allowed by Access-Control-Allow-Origin.
Я прочитал несколько сообщений post1, post2, они упоминают изменение функции backbone.sync, но я не совсем уверен, как это сделать. Вот мой код до сих пор (это в моем Backbone.Router):
userDetails: function(id) {
console.log('Loading: userDetails');
var User = Users.get(id);
User.fetch({dataType: "jsonp"});
console.log(User);
userView = new UserView({
model: User
});
userView.render();
},
Спасибо!
также , дубликат [Access-Control-Allow-Origin Not Allowed by Server] (http://stackoverflow.com/questions/9327218/access-control-allow-origin-not-allowed-by) – tkone
api.github.com делает поддержка jsonp. В jQuery установите ваш URL-адрес, чтобы включить 'callback =?', И он будет работать нормально. Так что ваш URL-адрес будет 'api.github.com/users/toddself?callback=?'и jQuery будет обрабатывать вызов jsonp и предоставлять данные для вашей функции успеха как обычно. – tkone