Angularjs   发布时间:2022-04-20  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了AngularJS使用拦截器来处理$http 404s – 承诺未定义错误大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个Angular应用程序,我想处理404的API终点。关键组件如下所示:
// app.js

var myApp = angular.module('myApp',['ngRoute',]);

myApp.config( function ($httpProvider,$interpolateProvider,$routeProvider) {
  $httpProvider.interceptors.push('httprequesTinterceptor');

  $routeProvider
    ...
    .when('/project/:projectId',{
        templateUrl : 'partials/project_detail.tmpl.html',controller: 'ProjectDetailCtrl',resolve: {
            project: function ($route,ConcernservicE) {
                return Concernservice.get('projects/',$route.current.params.projectId);
            },}
    });
});


// interceptors.js

myApp.factory('httprequesTinterceptor',function ($q,$LOCATIOn) {
  return {
    response: function(responsE){
      return promise.then(
        function success(responsE) {
          return response;
        },function error(responsE) {
          if(response.status === 404){
            $LOCATIOn.path('/404');
            return $q.reject(responsE);
          }
          else{
            return $q.reject(responsE); 
          }
        }
      );
    }
  };
});


// services.js

myApp.factory('Concernservice',function ($http,$q) {

var Concernservice = {
    ...
    get: function (items_url,objId) {
        var defer = $q.defer();
        $http({method: 'GET',url: api_url + items_url + objID}).
            success(function (data,status,headers,config) {
                defer.resolve(data);
            }).error(function (data,config) {
                // when API not found,status == 404 
                console.log('Concernservice.get status',status);
                defer.reject(status);
            });
        console.log('Concernservice.get promise',defer.promisE);
        return defer.promise;
    },}
});

问题是我收到ReferenceError的错误:promise没有被定义为响应。这是因为关注服务违背承诺吗?我该怎么处理这个?

任何帮助非常感谢。

@H_301_8@

大佬总结

以上是大佬教程为你收集整理的AngularJS使用拦截器来处理$http 404s – 承诺未定义错误全部内容,希望文章能够帮你解决AngularJS使用拦截器来处理$http 404s – 承诺未定义错误所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。