Как привязать параметры области видимости к URL, используя сервис

0

Я не могу привязать переменные области к службе get в контроллере.

My service file
app.service('loginService', function ($http) {

    var Service = {};
    Service.getLogin = function () {

        return $http.get('http://183.8/HMS/Service1.svc/LoginVerification/');

    };

    return Service;

})

и в моем контроллере я должен использовать выше службы, как показано ниже, путем передачи идентификатора и пароля электронной почты

loginService.getLogin( + $scope.emailId + '/' + $scope.password);

без обслуживания я могу получить решение, но с сервисом эти два параметра не привязаны к URL-адресу, любое решение, пожалуйста, помогите.

  • 0
    где вы обрабатываете + $ scope.emailId + '/' + $ scope.password в вашем сервисе
  • 0
    @RohanPawar полный URL, предоставленный командой API: 183.82 / HMS / Service1.svc / LoginVerification {EMAILID} / {ПАРОЛЬ}
Показать ещё 4 комментария
Теги:

2 ответа

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

Функция сервиса должна возвращать новый объект, что-то вроде этого

  var Service = function(){
           this.getLogin = function (email,password) {
                return $http.get('http://183.8/HMS/Service1.svc/LoginVerification/'+email+'/'+password);

            };
     }       
    return new Service();

и позвоните в службу

loginService.getLogin( $scope.emailId , $scope.password);

или изменить сервисную функцию на заводскую

app.factory('loginService', function ($http) {
  • 0
    Я пробовал ваше решение, но они не привязаны к URL
  • 0
    Пожалуйста, попробуйте обновленный код
Показать ещё 1 комментарий
2

попробуй это

app.service('loginService', function ($http) {

        function getLoginCall(url) {
            return $http.get('http://183.8/HMS/Service1.svc/LoginVerification/'+url);
        }

        return {
            getLogin:getLoginCall
        };

    });

и в вашем contorller

loginService.getLogin($scope.emailId + '/' + $scope.password);

Ещё вопросы

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