2016-10-01 2 views
1

Необходимо преобразовать приведенную ниже команду curl в угловой HTTP-запрос. Команда выглядит так, как показано ниже.Как я могу преобразовать команду curl в angularjs http request

"свернуться -X POST --data 'Имя пользователя = MyUserName & пароль = MyPassword' -i https://myurl.com/j_spring_security_check"

В протокол HTTPS, что я предполагаю использовать, GET или POST. Может ли кто-нибудь помочь в этом.

ответ

0

Это может быть служба, которая имеет postMethod метод, который принимает два аргумента имя пользователя и пароль, так же, как это:

angular.factory('myService', ['$http', function($http){ 
    function postMethod(username, password){ 
     var request = { 
      method:'POST', 
      url: 'https://myurl.com/j_spring_security_check ', 
      data: { 
       username:username, 
       password:password 
      } 
     } 
     return $http(request); 
    } 

    return { 
     postMethod:postMethod 
    } 
]); 

Затем вы можете использовать свой сервис следующим образом:

angular.module('myapp').controller('MainCtrl', ['myService', function(myService){ 
    myService.postMethod('foo', 'bar').then(function(response){ 
     // Do a UI change ? 
    }); 
}]); 
+0

Спасибо за ответ чувак. Пробовал аналогичным образом. Я получил ошибку ниже ... »Ответ на запрос предварительной проверки не проходит проверку контроля доступа: нет заголовка« Access-Control-Allow-Origin »на запрошенном ресурсе. Следовательно,« https: // localhost: 9292 » не разрешен доступ ". Как я могу разрешить эту ошибку? – Habib

+0

Проблема CORS ... если вы находитесь на хроме, самый простой способ - установить следующее расширение, чтобы разрешить несколько запросов происхождения: https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi ? hl = ru – Zakaria

+0

Проблема была исправлена ​​на моей машине. Большое спасибо Закария. Но здесь у меня мало сомнений. Я не могу установить это расширение chrome в машинах пользователей. то как решить эту проблему. – Habib