2015-09-08 3 views
1

Я хочу передать имя домена в качестве параметра с запросом $ resource. Я пробовал это, но он не работает. Я не понимаю, почему. Любая подсказка? Он выводит http://:url/ вместо переменной, которую я пытаюсь передать.

редактировать: переменная: URL проходит, если я что-то вроде этого: http://adomain.com/:url

Вот мой код:

Моя фабрика:

angular.module('myApp') 
    .factory('LoadingContent', function LoadingContentFactory($resource) { 
    return $resource('http://:url/wp-json/posts/?type[]=:type&filter[posts_per_page]=50&filter[order]=DESC', {type: '@type',url: '@url'}, {'get': {method: 'GET', isArray: true, params: {type: '@type',url: '@url'} }}); 
    }); 

Моя функция:

LoadingContent.get({ 
    url : $scope.selectedCompany.URL, 
    type : $scope.selectedCompany.type, 
}) 
.$promise.then(
    function(data){ 
     $scope.articles = data; 
     openInfoModals.closeModal(); 
    } 
); 

Pro Проблема решена: проблема возникает из версии углового ресурса # 1.4.5. Я вернулся к версии 1.4.3, и он работает.

Если у кого-то есть решение, чтобы оно работало с 1.4.5, он рад.

ответ

1

Реальная проблема связана с добавлением поддержки адресов IPv6 в ngResource (см https://github.com/angular/angular.js/issues/12512). Если вы посмотрите на фиксацию, они фактически игнорируют имя домена/хоста при выполнении замены параметра. Как уже упоминалось, понижение до 1.4.3 устраняет проблему. К счастью, это, по-видимому, единственное изменение между 1.4.3 и 1.5.5, поэтому понижение не является проблемой.

Для полноты я также создал эту проблему в угловом проекте, чтобы отслеживать постоянное исправление: https://github.com/angular/angular.js/issues/14542.

0

Я не думаю, что в вашем коде есть что-то не так.

Я создал plunker, копируя ваш код и его работу отлично.

Вот его ссылка: http://plnkr.co/edit/RsI3TgKwcjGEXcTMKoQR?p=preview

+0

Он выводит эту ошибку: XMLHttpRequest не может загрузить http: //: url/wp-json/posts /? Type [] = публикация и фильтр [posts_per_page] = 50 & filter [order] = DESC. Как вы можете видеть: type => Публикация, но: url не проходит. Это странно. –

+0

вы проверили плункер .. я не понимаю, что он работает хорошо – maddygoround

+0

Проблема решена: проблема исходит из версии углового ресурса # 1.4.5. Я вернулся к версии 1.4.3, и он работает. Спасибо. –

Смежные вопросы