Как получить доступ к Couchdb Cross Domain из Angularjs
Вопрос
Я настроил локальную среду, где я загружаю данные из файла json:
var Players = $resource('data/players.json');
var players = Players.query(function(){});
.
И это работает отлично.
Теперь я хочу получить доступ к Couchdb в другом домене (http://playball.iriscouch.com/players), и на основе примера гугла Бузз, я пробовал следующее, но я не могу заставить его работать:
var Players = $resource('http://playball.iriscouch.com/players',
{alt: 'json', callback: 'JSON_CALLBACK'},
{get: {method: 'JSON'}
});
var players = Players.query(function(){});
.
Я просто получаю пустой массив ... любые идеи?
Спасибо Buch!
Сун
Решение
Если у вас есть контроль над сервером, используйте cors .
Чтобы исправить свой пример:
.
var Players = $resource('http://playball.iriscouch.com/players',
// These params will be set to each request (?alt=json&callback=JSON_CALLBACK),
// where JSON_CALLBACK placeholder will be replaced with correct callback fn,
// generated by Angular.
{alt: 'json', callback: 'JSON_CALLBACK'},
// You need to configure query method to use JSONP
{query: {method: 'JSONP'}
});
var players = Players.query(function(){});
Обязательно проверьте, отвечает ли сервер правильных данных (DEV Toolbar - сетевая панель).