【问题标题】:Get call to REST service in Angular results in unknown error在 Angular 中调用 REST 服务会导致未知错误
【发布时间】:2020-05-17 19:38:55
【问题描述】:

在我的 Angular 8 应用程序中,我尝试调用一个应该返回一些 Json 数据的休息服务。我的参数只有链接,授权:基本,用户名,密码。在 Postman 中,调用工作正常,我看到了预期的数据。在我的 Angular 应用程序中,我看到了以下消息:

httpErrorResponse {headers: HttpHeaders, status: 0, statusText: "Unknown Error",

这是我的代码。

还有我的头部设置:

const httpOptions = {
  headers: new HttpHeaders({
    "Content-Type":  "application/json",
    "Authorization": 'Basic ' + btoa("myusername:mypassword")
  })
};

有我的服务:

getMyList() {
  //return this.http.get<any>('https://jsonplaceholder.typicode.com/todos/1', httpOptions).pipe(map(r =>r))
  return this.http.get<any>('mylink', httpOptions ).pipe(map(r =>r))
}

我如何在组件中调用我的服务:

this.personService.getMyList().subscribe( r => console.log(r))

正如您从评论行中看到的那样,我还尝试使用互联网上提供的假 json 服务更改真实链接以供开发人员测试,在这种情况下一切正常;而且,也许,它似乎代码是正确的。我该如何解决这个问题?

【问题讨论】:

  • 开发者控制台中的网络选项卡针对 HTTP 请求显示什么?
  • Angular 8 应用和服务器应用是否在同一个域中?检查“网络”选项卡,这很可能是 CORS 错误,您需要在服务器中允许 Angular 8 域连接。
  • 两者,你是对的!在控制台的这一点上,我看到一个 CORS 错误,并且后端有另一个服务器的另一个 IP 地址。我该如何解决?

标签: angular


【解决方案1】:

https://www.techiediaries.com/fix-cors-with-angular-cli-proxy-configuration/?fbclid=IwAR0PvTgToYhQrMXMwIW5JBuOtz8xaEX11WytlRVj-FZul5k5wcKEG4nENpA

这是解决方案:代理配置。我在特定的配置文件中编写了托管后端的服务器的 IP,现在一切正常。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-04-07
    • 1970-01-01
    • 2011-07-24
    • 2021-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多