我的restangular调用在配置文件中设置了baseUrl到http://localhost:3000/
。所以像
Restangular.all("awards").customPOST(award)
致电baseUrl+"awards"
现在,当我为此编写测试时,我必须写:
httpBackend.expectPOST("http://localhost:3000/awards")
但是稍后如果这个baseUrl changes
,我将不得不在很多.expect()
方法中更改它。
是否有任何方法在某个配置文件中为expect方法设置baseUrl
?
所以期望方法就像 -
httpBackend.expectPOST(baseUrl + "awards");
因此,baseUrl中的任何更改都不需要expect()
方法中的任何更改吗?
答案 0 :(得分:0)
您可以创建angular.constant
,然后在需要的任何地方注入该常量。
var app = angular.module('app', []);
app.constant('Configuration', {
BASE_URL: 'http://localhost:3000/'
});
app.factory('RestApiService', function($http, Configuration) {
var awardApi = Configuration.BASE_URL + '/awards';
return {
getAwards: fucntion() {
return $http.get(awardApi);
};
};
});