我正在研究一个使用Spotify API获取数据的Angular2应用程序示例。当我运行代码时,我在控制台中得到响应错误"无效访问令牌"。我提供了正确的访问令牌,但错误仍然存在,我没有得到如何解决它以及我做错了什么。
import { Injectable } from '@angular/core';
import { Http, Response, Headers, RequestOptions } from '@angular/http';
import 'rxjs/add/operator/map';
@Injectable()
export class SpotifyService {
private searchUrl: string;
constructor(private _http: Http) { }
searchMusic(str: string, type = 'artist') {
const access_token = '<My Access Token Here>';
const headers = new Headers({ 'Authorization': 'Bearer ' + access_token });
this.searchUrl = 'https://api.spotify.com/v1/search?query='+str+'&offset=0&limit=20&type='+type+'&market=US';
return this._http
.get(this.searchUrl, { headers })
.map(res => res.json());
}
}
答案 0 :(得分:1)
您可以通过在标题中添加其中一个内容类型进行检查
var headers: Headers = new Headers({'Authorization': 'Bearer ' + access_token, 'Content-Type': 'application/x-www-form-urlencoded' });
OR
var headers: Headers = new Headers({'Authorization': 'Bearer ' + access_token, 'Content-Type': 'application/json' });
答案 1 :(得分:1)
您是否能够通过在api控制台中提供访问令牌来获得有效的响应?
https://developer.spotify.com/web-api/console/get-search-item/?q=tania+bowra&type=artist