次のような角度でカスタム http サービスを定義しました。
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;
});
そして、次のようにコントローラーでこのサービスにアクセスできます。
angular.module('myApp')
.controller('myCtrl', function (myhttpserv) {
var webService = 'getUser?u=3'
myhttpserv.async(webService).then(function (data) {
console.log(data);
})
});
ただし、このプロセスを合理化して、静的 URL を使用してサービス内にすべて含まれ、単にデータを返すようにする必要があります。そのため、コントローラーで次のように呼び出すことができます。
angular.module('myApp')
.controller('myCtrl', function ($scope, myhttpserv) {
console.log(myhttpserv.var1);
console.log(myhttpserv.var2);
etc...
});
この機能を得るためにサービスを微調整することはできないようです。誰でもそれを行う正しい方法を知っていますか?