本文介绍了如何重用与AngularJS重试逻辑HTTP请求的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
是否有可能执行同样的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 }); }]);
更多推荐
如何重用与AngularJS重试逻辑HTTP请求
发布评论