我正在尝试对 YouTube Web API 进行 GET 调用,但不知道如何使用 http.get 函数传递参数。我已经使用了 fiddler 并确保正在发出请求。我目前收到 400 错误,指出我缺少参数“Part”。如何修改代码以在请求中包含所需的参数?
private _url = 'https://www.googleapis.com/youtube/v3/';
private _key = '';
getPlaylistVideos(playlistId, pageToken){
var url = this._url + "playlistItems";
var options = { part: 'snippet', maxResults: 50, playlistId: playlistId, key: this._key, pageToken: pageToken }
return this.http.get(url, options);
}
最佳答案
您需要将搜索参数包含在您的请求中。我认为这对你有用:
getPlaylistVideos(playlistId, pageToken) {
let url = `${this._url}playlistItems`,
options = { part: 'snippet', maxResults: 50, playlistId: playlistId, key: this._key, pageToken: pageToken },
params = URLSearchParams();
for (let key in options) params.set(key, options[key);
return this.http.get(url, {search: options});
}
您可以使用 set 方法创建 URLSearchParams,您可以找到完整文档 here
关于angularjs - 使用 Angular 2 中的参数对 REST 服务进行 GET 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38490737/