2014-10-20 2 views
0

Давайте предположим, что служба, как это:ngResource: Обещание не Решенный

.factory('GetPaths', function($resource) { 
    return $resource('/paths/coord/:lat/:long', 
     {lat: "@lat" }, {long: "@long" } , 
     { 
     get: {method: 'GET' , isArray: true }, 
     } 

    ); 
}) 

она вызывается так:

scope.paths = GetPaths.get({'lat':1},{'long':1}); 

Я получаю следующий ответ:

{"long":1,"$promise":{},"$resolved":false} 

Когда я используйте cURL на моем бэкэнде, я получаю этот массив JSON:

[ 
    { 
    "pathid":"1", 
    "title":"Pathest", 
    "eta":"3:00", 
    "TYPE":"Hike", 
    "difficulty":"Hard", 
    "distance_in_km":"0" 
} 
] 

Мой вопрос: Как получить тот же массив JSON как данные для заполнения моего списка?

ответ

0

Существует проблема с настройкой $ resource. Должно быть:

return $resource('/paths/coord/:lat/:long', 
    {lat: '@lat', long: '@long' } , 
    { get: { method: 'GET', isArray: true } } 
); 

И в вашем случае, вы можете просто использовать query вместо get и оставить в третий аргумент вообще. Выезд $resource docs.

+0

это нормально, что мой журнал теперь возвращает пустой ответ? – Wheatley

+0

Чтобы убедиться, что после применения исправления в config вы выполняете вызов api, как 'GetPaths.query ({lat: 1, long: 1})'? –

+0

Да. мой новый код доступен здесь [JS Pastebin] (http://pastebin.com/h3yV0xQ2), вы можете вызвать API в [API Sample Call] (http://p-express.ddns.net/ike/v1/paths/coord/1/1) – Wheatley

0

Проблема возникает на самом деле из безопасности моего браузера CORS. она может быть отключена через отверстия хром с:

--args --disable-web-security 
Смежные вопросы