строка поиска URL-адреса angular encode

как мне закодировать ключевое слово, которое отправляется на сервер, а затем декодировать его?

Я не могу искать ключевые слова, содержащие такие символы, как .? или / на данный момент.

Отображаемый код неверен, поскольку конечная точка возвращает объект.

 self.search = function (keyword) {
            var endpoint = $location.path(baseEndpoint + "search/").search(keyword),
                deferred = $q.defer();

            $http.get(HttpRequestUrlHelper.ensureUniqueRequestUrl(endpoint), {
            }).success(function (response) {
                deferred.resolve(response);
            }).error(function (error) {
                deferred.reject(error);
            });

            return deferred.promise;
        }

Если я использую encodeURIComponent(), мой URL-адрес закодирован, но мой контроллер не срабатывает:

request url => /todo/search/Leka%20med%20barnen.?UniqueKey=1404655031784 angular.js:9159
GET http://localhost:49195/todo/search/Leka%20med%20barnen.?UniqueKey=1404655031784 404 (Not Found) 

person Community    schedule 06.07.2014    source источник


Ответы (2)



Вместо этого вместо этого была создана строка запроса:

var endpoint = baseEndpoint + "search?keyword=" + keyword,
person Community    schedule 06.07.2014
comment
Я думаю, что это все же больше подходит. Более УДОБНО использовать переменные пути только тогда, когда они служат координатами для запрошенных ресурсов. - person Lior Chaga; 06.07.2014