【问题标题】:REST API request in Angular 8 is showing statusText: "Unknown Error"Angular 8 中的 REST API 请求显示 statusText:“未知错误”
【发布时间】:2019-11-14 21:25:18
【问题描述】:

我正在尝试通过 REST API 服务从服务器获取一些数据。在我下面的 service.ts 中,

    getCategories(): Observable<Category> {

// Http Options
    const httpOptions = {
      headers: new HttpHeaders({
        'Content-Type': 'application/json',
        'Access-Control-Allow-Origin' : '*',
        'Access-Control-Allow-Methods' : 'POST'
      })
    };
        return this.http.post<Category>(this.apiURL+'api', JSON.stringify({"type":"get_categories"}), httpOptions )
        .pipe(
          retry(0),
          //catchError(this.handleError)
        )
      }

再次显示如下错误,

Object { headers: {…}, status: 0, statusText: "Unknown Error", url: "http://localhost/test/api", ok: false, name: "HttpErrorResponse", message: "http://localhost/test/api 的 Http 失败响应:0未知错误”,错误:错误}

我已经引用了很多帖子,但没有任何帮助。

【问题讨论】:

    标签: angular typescript rxjs single-page-application angular8


    【解决方案1】:

    你得到这个错误

    ERROR ReferenceError: "httpOptions is not defined"

    因为您使用的是在getCategories 范围之外定义的httpOptions

    你应该像这样改变你的代码。

    getCategories(): Observable<Category> {
       const httpOptions = {
            headers: new HttpHeaders({
            'Content-Type': 'application/json',
            'Access-Control-Allow-Origin' : '*',
            'Access-Control-Allow-Methods' : 'GET, POST, PUT, DELETE'
            })
        };
    
       return this.http.post<Category>(this.apiURL+'api', JSON.stringify({"type":"get_categories"}), httpOptions )
        .pipe(
          retry(0),
          //catchError(this.handleError)
        )
      }
    

    【讨论】:

    • 这解决了一个问题。现在这部分没问题。但即使遵循这个或直接在请求中传递标头,我也会收到Http failure response 的错误。请参阅查询中的第二部分。
    • 这真的很难说,因为我不知道你处理 API 端代码
    • 有些奇怪。如果我传递标头,则请求自身不到达 API 服务器。如果我通过标头,请求方法显示为OPTIONS 而不是POST
    • 你运行 Angular 和 server jn 不同的端口吗?
    • 是的,Angular 和 API(基本上是 wamp 上的 laravel)在不同的端口上运行
    猜你喜欢
    • 2020-10-31
    • 1970-01-01
    • 2015-06-12
    • 1970-01-01
    • 1970-01-01
    • 2013-05-09
    • 1970-01-01
    • 1970-01-01
    • 2014-05-04
    相关资源
    最近更新 更多