是否有可能执行同样的HTTP请求不止一次在AngularJS?即不重新定义两次同样的要求?
VAR重试= FALSE;
VAR REQ = $ http.get('ajax.php A = StartSession和放大器;参考='+ code);
req.success(函数(RES){
警报(RES);
});
req.error(函数(RES){
如果(重试==假)
//运行再次请求req.get(); ?
重试= TRUE;
});
解决方案
这是什么样的服务和工厂进行了发言:
app.factory(的DataFactory,[$ HTTP,函数($ HTTP){
返回 {
调用:函数(code){
返回$ http.get('ajax.php A = StartSession和放大器;参考='+ code)
}
}
}]);
注入,并使用
app.controller(myCtrl,[的DataFactory功能(的DataFactory){
变量code =我的code;
dataFactory.call(code).success(函数(RES){
//疑难杂症
});
}]);
Is it possible to execute the same HTTP request more than once in AngularJS? i.e. without re-defining the same request twice?
var retry = false;
var req = $http.get( 'ajax.php?a=StartSession&ref=' + code );
req.success(function(res) {
alert(res);
});
req.error( function(res) {
if(retry == false)
//run request again req.get(); ?
retry = true;
});
解决方案
It's what services and factories were made for:
app.factory("dataFactory", ["$http", function($http) {
return {
call: function(code) {
return $http.get( 'ajax.php?a=StartSession&ref=' + code )
}
}
}]);
Inject and use
app.controller("myCtrl", ["dataFactory", function(dataFactory) {
var code = "myCode";
dataFactory.call(code).success(function(res) {
//gotcha
});
}]);