Angular HttpClient.get 标头

赫克托林爵士

我有这个简单的代码即服务

import { Injectable } from '@angular/core';
import { HttpClient, HttpHeaders } from '@angular/common/http';
import { map } from 'rxjs/operators';

@Injectable({
  providedIn: 'root'
})
export class SpotifyService {
  constructor(private http: HttpClient) {
  }

  getQuery(query: string) {
    const cabecera: HttpHeaders = new HttpHeaders({
      'Authorization': 'Bearer BQDWZC2Y_iSV3rfmAhv-QxDpmhhJbbmgCnspy7HpIZPX5CbJ74D4Xl4aOyXLUL4smF2gZ_V3wiSXLxdLFPY'
    });
    const url = 'https://api.spotify.com/v1/' + query;
    return this.http.get(url, { cabecera });
  }
  getNewReleases() {
    return this.getQuery('browse/new-releases').pipe(map( data => data['albums'].items));
  }
}

但我收到此错误,我不明白为什么。

'{ cabecera: HttpHeaders; 类型的参数 }' 不能分配给类型为 '{ headers?: HttpHeaders | 的参数 { [标题:字符串]:字符串 | 细绳[]; }; 观察?:“身体”;参数?:Ht...'。对象字面量只能指定已知属性,并且类型 '{ headers?: HttpHeaders | 中不存在 'cabecera'。{ [标题:字符串]:字符串 | 细绳[]; }; 观察?:“身体”;参数?:Ht...'。

阿卜杜拉卡迪

您的return this.http.get(url, { cabecera });行在语义上不正确,这意味着/解决以下问题:

return this.http.get(url, 
    { cabecera : new HttpHeaders({
        'Authorization': 'Bearer BQDWZC2Y_iSV3rfmAhv-QxDpmhhJbbmgCnspy7HpIZPX5CbJ74D4Xl4aOyXLUL4smF2gZ_V3wiSXLxdLFPY'
    }) 
});

这是错误的,因为传递给 HTTP 客户端的选项对象不期望调用cabeceraheaders而是键。

所以这可以通过用这个替换该行来解决: return this.http.get(url, { headers: cabecera });

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Angular HttpClient-从响应获取标头

Angular HttpClient缺少响应标头

向Angular HttpClient添加HTTP标头不发送标头,为什么?

Angular 4.3.3 HttpClient:如何从响应的标头获取值?

Angular 5-无法设置HttpClient标头

如果发生错误,Angular httpClient 会获取标头

Angular HttpClient将标头追加到HttpHeaders

Angular 5-httpClient未根据请求发送标头

Angular 4新的HttpClient内容处理标头

从Angular中的HttpClient发布请求获取响应标头?

Angular8获取完整的HttpClient响应标头

Angular 7 HttpClient发布响应标头为空

HttpClient 忽略传递给 .get() 的标头

HttpClient标头与HttpRequestMessage标头

UWP HttpClient禁用“ If”标头

来自get请求的Angular 2访问标头信息

Angular http.get标头无法识别

在Ionic Angular应用程序中无法从HttpClient读取HttpResponse中的自定义标头

Angular 9 HttpClient:在一次调用中忽略标头

如何在Angular 5中使用HttpClient访问响应标头?

angular 5 httpclient ,在 post 上,响应不返回标头,只返回响应对象

使用Angular的新HttpClient,订阅事件时如何获取所有标头?

使用 HttpRequest 对象调用时设置 Angular HttpClient 请求标头

Angular 10 HttpClient 未设置正确的 Content-Type 标头

将内容类型标头添加到httpclient GET请求

更改HttpClient的默认请求标头

HttpClient请求的自定义标头

添加httpclient DefaultRequestHeader和RequestMessage标头

angular 5 httpclient,在post上,响应不返回自定义标头,仅返回响应对象