【问题标题】:angular2-jwt: AuthHttp causes an error 'Expected 0 type arguments, but got 1.'angular2-jwt:AuthHttp 导致错误“预期 0 类型参数,但得到 1。”
【发布时间】:2017-11-16 06:35:38
【问题描述】:

当我在下面的代码中使用来自 angular2-jwt 的 AuthHttp 时,我看到了错误:

“预期的类型参数为 0,但得到了 1。”

public getData(): Observable<User[]>{
const url = environment.apiUrl + "users";

return this.authHttp
  .get<User[]>(url)
  .map((res: User[]) => res);
  }

如果我使用 http:HttpClient,代码运行良好。

使用 AuthHttp 运行此代码需要做哪些更改?

【问题讨论】:

  • 您能包含更多代码吗?例如,您在哪里分配 this.authHttp?

标签: angular angular2-jwt authhttp


【解决方案1】:

你确定你使用正确吗?

我希望它看起来像这样:

this.http.get(url) 
      .map( (res) => res.json())
      .subscribe(
        data => this.thing = data,
        err => console.log(error),
        () => console.log('Request Complete')
      );

【讨论】:

  • 是的,它是正确的,订阅在组件文件中。当我使用 http: HttpClient 时,它起作用了,但 AuthHttp 没有。我认为问题在于使用类型 User[] 但 id 喜欢将响应映射到服务中的 User[]。
【解决方案2】:

我找到了解决办法:

   public getData(): Observable<User[]>{
    const url = environment.apiUrl + `users`;

    return this.authHttp
      .get(url)
      .map((res: Response) => <User[]>res.json());
  }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-29
    • 2021-08-22
    • 2019-08-28
    • 1970-01-01
    • 2020-11-07
    • 2018-11-18
    相关资源
    最近更新 更多