Я звоню в httpService для публикации данных и хочу отобразить сообщение, например, если произошла ошибка.Возвращение сообщения об успешном завершении с httpost в Angularjs
(function() {
'use strict';
angular.module("adminSetup").controller("AccountController", ["$scope", "$location", "httpService", AccountController]);
function AccountController($scope, $location, httpService) {
$scope.message = "";
$scope.error = false;
$scope.user = {
username: '',
password: '',
firstname: '',
lastname: '',
email: '',
city: ''
}
$scope.submitUser = function() {
httpService.registerUser($scope.user,
function (data) {
$scope.message = data;
},
function (error)
{
$scope.message = error;
});;
}
}
})();
Служба выглядит следующим образом
(function() {
"use strict"
angular.module("common.services").factory("httpService", ["$q", "$http", "appSettings", userAccountHttp])
function userAccountHttp($q, $http, appSettings) {
var deferred = $q.defer();
var registerUser = function (user) {
$http({
url: appSettings.serverPath + "Account/Register/",
method: "POST",
data: user
}).then(function (data) {
return deferred.resolve("Success");
},
function (response) {
return deferred.reject(response.data.exceptionMessage);
})
}
return {
registerUser: registerUser
};
}
})();
Как и в настоящий момент, сообщение службы Http не возвращается службой AccountController. Как я могу вернуть статус Контроллеру
'$ http' уже возвращает обещание, нет необходимости '$ q'. – Kyle