AngularJS: Durchführen der $http-Anfrage im Kunden-service, und Rückgabe von Daten
Ich habe ein benutzerdefiniertes http-service in Winkel, die wie folgt aussieht:
angular.module('myApp')
.factory('myhttpserv', function ($http) {
var url = "http://my.ip.address/"
var http = {
async: function (webService) {
var promise = $http.get(url + webService, { cache: true }).then(function (response) {
return response.data;
});
return promise;
}
};
return http;
});
Und ich kann Zugang zu diesem Dienst in meinem controller etwa so:
angular.module('myApp')
.controller('myCtrl', function (myhttpserv) {
var webService = 'getUser?u=3'
myhttpserv.async(webService).then(function (data) {
console.log(data);
})
});
Allerdings habe ich nun brauchen, um diesen Prozess zu rationalisieren, so dass Sie sich innerhalb der service mit einer statischen url und es gibt einfach die Daten. So kann ich nur rufen Sie es in der Steuerung wie folgt:
angular.module('myApp')
.controller('myCtrl', function ($scope, myhttpserv) {
console.log(myhttpserv.var1);
console.log(myhttpserv.var2);
etc...
});
Ich kann nicht scheinen, um zu optimieren, den service zu bekommen, diese Funktionalität. Wer weiß den richtigen Weg, es zu tun?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Option 1 - Verwenden Sie ein Versprechen API
Controller:
Option 2 - Mit route lösen
Service:
Controller:
Option 3 - Verwenden Sie $Intervall-service
Controller: