Я создал службу и я с помощью этого для моего входа:AngularJS HTTP POST не работает
EDIT: Добавлен «успех» и код «ошибки».
EDIT 2: Я разрабатываю мобильное приложение iOS, которое включает Javascript/AngularJS. Так есть ли способ, чтобы просмотреть ошибки как предупреждения ..
.service('Login', function($http, $q, $httpParamSerializerJQLike) {
return {
loginUser: function(ipAdd, name, pw) {
var sendurl = 'http://' + ipAdd + ':8080/loginuser/user.cgi';
var postData = {
'ACTION' : 'login',
'LOGIN' : name,
'PASSWORD' : pw
};
//what is the mistake here?
return $http({
method : 'POST',
url : sendurl,
data : $httpParamSerializerJQLike(postData),
headers : { 'Content-Type': 'application/x-www-form-urlencoded'}
}).success(function(response) {
var x2js = new X2JS();
var jsonObj = x2js.xml_str2json(response.data);
if (typeof jsonObj === 'object') {
alert("here:1");
return jsonObj;
} else {
alert("here:2");
// invalid response
return $q.reject(jsonObj);
}
}).error(function(response) {
//do error
//comes here when no internet connection is found..
alert("here:3");
return $q.reject(response.data);
});
}
}
})
Я также включил это в app.js:
var app = angular.module("myApp", ['starter.services'],function($httpProvider){
$httpProvider.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=utf-8';
});
Мой фактический URL выглядит следующим образом:
'http://' + ipAdd + ':8080/loginuser/user.cgi?ACTION=login&LOGIN=' + name + '&PASSWORD=' + pw;
Я тоже пробовал этот подход: https://stackoverflow.com/a/25570077/5876598
Моя служба ничего не возвращает .. Я хочу знать, ошибаюсь ли я в формировании url или при отправке данных.
Спасибо.
Проверьте ошибки в consolse данных – Sajeetharan
попробовать: PostData без $ httpParamSerializerJQLike и проверить консоль на наличие ошибок –
'$ http' вернуть' promise'. Что вы ожидаете? Ваш обратный вызов успеха пуст. –