Проблема с параметром URL-адреса ngResource

0

Я создаю поиск людей на основе типа с использованием HTML, JS, AngularJS против конечной точки REST для API поиска SharePoint Server 2013.

Моя конкретная проблема заключается в определении моего ресурса.

Шаблон запроса поиска SharePoint Я использую содержит двоеточие (:):

.../_api/search/query?querytext=%27John+AND+Memberships:GRP-InformationSystems%27&sourceid=%27B09A7990-05EA-4AF9-81EF-EDFAB16C4E31%27

Вот реализация сервиса:

var searchService = servicesMod.factory('searchPeople', ['$resource',
    function ($resource) {
        return $resource('http://teamsint/_api/search/query?querytext=%27:searchText+AND+Memberships:GRP-InformationSystems%27&sourceid=%27B09A7990-05EA-4AF9-81EF-EDFAB16C4E31%27', { 'searchText': '@@searchText' }, {
            query: { method: 'GET', isArray: false, withCredentials: true },
        });
    }]);

... и angularjs неверно идентифицирует его как параметр и удаляет его из URL-адреса ресурса.

и запрос обращается к серверу следующим образом:

HTTP://mysharepointserver/_api/поиск/запрос querytext =% 27John + и + Членство: -InformationSystems% 27 & SourceId =% 27B09A7990-05EA-4AF9-81EF-EDFAB16C4E31% 27

": GRP", который является частью поискового запроса, анализируется из URL-адреса.

Есть ли способ escape двоеточия, поэтому в этом случае он игнорируется?

Благодарю!

Теги:
angular-resource

1 ответ

1
Лучший ответ

Исправление здесь было заменить двоеточие (:) в строку запроса с %3A, когда вы не хотите angularjs (1.5), чтобы думать, что это параметр.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню