Я делаю простую галерею, которая берет фотографии с учетной записи picasa с html + javascript.javascript - Происхождение http://127.0.0.1 не разрешено Access-Control-Allow-Origin
Во-первых, получает список альбомов, а затем для каждого альбома получает список фотографий. Первый запрос работает нормально, но остальные возвращает эту ошибку в браузере (Chrome):
GET https://picasaweb.google.com/data/entry/base/user/114476218463019618611/albumid/5750459375839674337?alt=json&hl=en_US 404 (Not Found) jquery.js: 8240 XMLHttpRequest не может загрузить https://picasaweb.google.com/data/entry/base/user/114476218463019618611/albumid/5750459375839674337?alt=json&hl=en_US. Исходный файл: // не разрешен Access-Control-Allow-Origin.
Это код:
var json_Album_URI = "https://picasaweb.google.com/data/feed/base/"
+ "user/" + username
+ "?alt=" + "json"
+ "&kind=" + "album"
+ "&hl=" + "en_US"
+ "&fields=" + "entry(media:group,id)"
+ "&thumbsize=" + 104
+ "&authkey=" + authkey;
$.ajax({
type: 'GET',
url: json_Album_URI,
success : function(resp) {
albums = resp.feed.entry;
},
dataType: 'json',
async: false
});
for (var id in albums) {
var album = albums[id];
var album_ID = album.id.$t.split('/')[9].split('?')[0];
var json_Photo_URI = "https://picasaweb.google.com/data/feed/base/"
+ "user/" + username
+ "/albumid/" + album_ID
+ "?alt=" + "json"
+ "&kind=" + "photo"
+ "&hl=" + "en_US"
+ "&fields=" + "entry(media:group)"
+ "&thumbsize=" + 104
+ "&authkey=" + authkey;
//this is the ajax call that fails
$.ajax({
type: 'GET',
url: json_Photo_URI,
success: function(photos) {
console.log(photos);
},
dataType: "json",
async: false,
});
}
Спасибо.
EDIT:
Я notica, что если я удалить строку:
+ "/albumid/" + album_ID
работы (конечно, без ожидаемого ответа).
попробовать JSONP вместо JSON для кросс домена Ajax вызова – Nemoy
Вот версия JSONP, которая работает на jsFiddle: http://jsfiddle.net/ XsfNE /. Не уверен, что это означает, что он работает локально. (Я использовал случайный идентификатор, найденный в Интернете, потому что ваш URL был 404.) – pimvdb