【问题标题】:Angular http request return null in chrome but works in firefoxAngular http请求在chrome中返回null,但在firefox中有效
【发布时间】:2019-02-15 08:34:29
【问题描述】:

我遇到了一个奇怪的问题。我已经为这个 Angular 7 项目工作了两个月。一切正常。但是突然间我所有的 HTTP 都返回了 null。但它在 Firefox 中按预期工作。我重新安装chrome,问题消失了,但一天后又开始了。我们使用 laravel 作为后端 API。 状态码为 200。但返回 null。它发生在每个 API(GET、POST)中。 我曾在另一台 PC 上尝试过同样的事情。在 chrome 中不起作用,在 Firefox 中起作用。谁能解释一下?
服务:

getRecentProjects () {
  return this.http.get(`${ApiUrl}/ati-erp-project`);  
}

组件:

this.homeService.getRecentProjects().subscribe(
      (success: any) => {
        console.log(success)
      }, (error: HttpErrorResponse) => {
        console.log(error);
      }
    )

【问题讨论】:

  • 你能告诉我们一个 HTTP 请求返回 null 的代码 sn-p 吗?
  • 服务:getRecentProjects () { return this.http.get(${ApiUrl}/ati-erp-project); } 组件: this.homeService.getRecentProjects().subscribe( (success: any) => { console.log(success); }, (error: HttpErrorResponse) => { console.log(error); } ) 这只是一个简单的例子..它发生在每一个请求中
  • 在 Chrome 中尝试使用这些 HTTP 请求时是否遇到任何与 CORS 相关的错误?
  • 是的,我在 chrome 和 firefox 中使用 cors 浏览器插件,否则会引发 cors 错误
  • 您是直接从浏览器打开 HTML 文档,还是通过本地主机上的网络服务器提供代码?

标签: angular rest httpclient angular7


【解决方案1】:

令人惊讶。这是一个CORS问题。很长一段时间以来,我一直在解决插件的 CORS 问题,特别是当我的后端没有任何标题或权限时。但突然,即使在激活 CORS 插件之后,HTTP 响应也为空。当我们使用授权标头配置后端时,它再次工作。 因此,也许它的 chrome 新政策在您使用插件时不会向您显示 CORS 错误,而是在响应正文中返回 null。

【讨论】:

    猜你喜欢
    • 2013-07-31
    • 2014-09-01
    • 2018-02-13
    • 2017-11-03
    • 1970-01-01
    • 1970-01-01
    • 2018-08-24
    • 2019-03-04
    • 2022-09-30
    相关资源
    最近更新 更多