在AngularJS上获取$ http响应错误状态

塔索斯

我在AngularJS上学习在线课程,并且正在学习它的第一步。

我试图在表单提交后调用API,并根据API响应显示和隐藏一些数据。

我首先要做的是检查状态响应,以防无效API调用返回500错误。但是,看来我做不到。

我的服务文件的一部分:

  service.getMenuItem = function (shortName) {

    return $http.get(ApiPath + '/menu_items/' + shortName + '.json')
    .then(function successCallback(response) {
      return response.data;
    }, function errorCallback(response) {
      return response.status;
    })
  };

在我的控制器上:

SignupController.$inject = ['MenuService'];
function SignupController(MenuService) {
  var signupCtrl = this;

  signupCtrl.submit = function () {
    signupCtrl.response = MenuService.getMenuItem(signupCtrl.user.favouritedish);
    if ( signupCtrl.response == 500 ) {
      signupCtrl.dishError = true;
    }
  };
}

如果我在$ http调用中没有任何错误,那么一切都会正常进行。但是,出现500错误时,似乎并非如此。我试图登录signupCtrl.response我的控制器,并且在value: 500那里。但是,如果无法验证。

AngularJS上的1.​​5.8版

尼基尔·莫哈南(Nikhil Mohanan)

使用.then()链接方法调用服务函数。

SignupController.$inject = ['MenuService'];

    function SignupController(MenuService) {
      var signupCtrl = this;

      signupCtrl.submit = function() {

        MenuService.getMenuItem(signupCtrl.user.favouritedish)
          .then(function(result) {
            console.log(result.data)
          }, function(error) {
            console.log(error.data)
          })
      };
    }

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用Angular HttpClient时如何获取错误响应的HTTP状态?

http响应状态为400时,使用fetch api获取自定义错误消息

Alamofire + Combine:获取HTTP响应状态代码

从SOAP响应中获取HTTP状态代码

如何在AngularJS上获取$ http readyState?

使用jQuery从ajax响应获取Http状态代码

使用'httpClient(postRequest,Handler)'方法获取Http响应状态

如何使用 JSTL 获取 http 响应状态代码?

如何从 Vuex 响应中获取错误状态代码?

获取请求状态码 200 响应 401 错误

Django测试在响应状态代码404上引发错误

docker在private nexus上登录=>来自守护程序的错误响应:尝试登录http:// ip:port / v2 /失败,状态为:404未找到

在AngularJS中缓存HTTP“获取”服务响应?

AngularJS $ http获取返回空状态0

从 Powershell 上的 HTTP 请求获取响应链接

AngularJS $http Get 方法错误,如“对预检请求的响应”

无法访问AngularJS $ http错误响应数据

使用Reactor Netty HTTP Client时如何获取HTTP响应正文和状态

AngularJS-$ http get返回状态为0的错误?

捕获响应主体以获取python中的HTTP错误

如何获取HTTP响应错误的详细信息

如何从Axios中的http错误获取状态代码?

安卓。获取 URL 时 HTTP 错误。状态=403

Spring Boot RestController,在错误状态响应主体上,错误消息为空

我需要在每个textinput上特别是AngularJS上获取http的内容

AngularJS POST失败:飞行前响应具有无效的HTTP状态代码404

尽管成功响应200,AngularJS $ http.head仍显示状态代码0

如何使用 KlaviyoClient 在没有 Http Get 的情况下从响应 API 获取状态代码?

使用curl时,从标题获取HTTP响应状态代码时出现问题