【问题标题】:Rewriting With Charles-Proxy Error Status is -1 instead of 503使用 Charles-Proxy 错误状态重写是 -1 而不是 503
【发布时间】:2020-04-25 12:06:32
【问题描述】:

我正在尝试使用 Charles-Proxy 来测试我的 angular 1 代码上的一些错误流路径,因此我故意将使用 Charles Proxy 的一些 api 请求重写为 503。在网络选项卡中,我看到了 503 options 请求但是,当 $http 请求进入它的错误处理函数时,它返回 -1 作为错误状态而不是 503。

$http(requestObject).then(function() {
  //some code that isn't running
}, function(error) {
  console.log(error.status) //logs -1
})

我的 Charles 代理重写正在命中,响应状态如下所示。

您可以在下面看到控制台输出(从图片中删除了 url)

当我不使用 Charles 重写时,它完全可以正常工作,如果自然出现错误,它也可以正常工作。

谢谢。

【问题讨论】:

    标签: angular http error-handling charles-proxy rewriting


    【解决方案1】:

    Charles 可能正在按您的预期工作。

    问题是请求已因 CORS 政策而中止。有关状态代码“-1”和 CORS,请参见以下说明。

    AngularJS $http returns documentation
    Cross-Origin Resource Sharing

    根据 AngularJS 文档,“-1”状态码是从 $http 库返回的,而不是从 Charles 或您的 api 服务器。

    编写附加代码以允许您的 API 服务器使用 CORS,然后重试该请求。

    【讨论】:

      猜你喜欢
      • 2012-12-30
      • 2020-12-19
      • 1970-01-01
      • 2018-10-27
      • 1970-01-01
      • 2015-09-25
      • 1970-01-01
      • 2012-05-08
      • 1970-01-01
      相关资源
      最近更新 更多