web-dev-qa-db-ja.com

YouTube Data API v3でページの結果を変更する方法

この例を使用して、YouTube API(v3)からビデオデータを取得しようとしています。

https://developers.google.com/apis-Explorer/#p/youtube/v3/youtube.search.list?part=snippet&maxResults=25&order=relevance&q=site%253Ayoutube.com&topicId=%252Fm%252F02vx4&_h= 1&

問題は、ページの結果を変更する方法が理解できないことです。たとえば、このクエリでは25個のアイテム(maxResults = 25)が得られますが、合計結果は-> "totalResults":548669です。ここでの大きな問題は、2ページ目に移動して他の25個の結果を受け取る方法です。

27
viktor

結果を見ると、「pageInfo」の直後に「nextPageToken」項目が表示されます。これは、次のリクエストでpageTokenとして渡す必要があります。

したがって、このAPIを呼び出す場合:

https://www.googleapis.com/youtube/v3/search?part=snippet&maxResults=25&order=relevance&q=site%3Ayoutube.com&topicId=%2Fm%2F02vx4&key={YOUR_API_KEY}

次のページでこれを呼び出します。

https://www.googleapis.com/youtube/v3/search?pageToken=CBkQAA&part=snippet&maxResults=25&order=relevance&q=site%3Ayoutube.com&topicId=%2Fm%2F02vx4&key={YOUR_API_KEY}
67
Matt Koskela

たとえば、これはあなたのAPIです

https://www.googleapis.com/youtube/v3/playlists?part=snippet,contentDetails&channelId=UCrA&maxResults=50&key=AIZsk

このAPIを使用すると、次のような結果が得られます。

{
"kind": "youtube#playlistListResponse",
"etag": "\"XpPGQXPLgenD_n8JR4Qk/05DoUs3OS-AxnDI1FJbdM\"",
"nextPageToken": "CDIQAA",
"pageInfo": {
    "totalResults": 585,
    "resultsPerPage": 50
},
"items": [
    {
        "kind": "youtube#playlist",
        "etag": "\"XpPGQXPLgenD_n8JR4Qk/7m0ztlwxvPmRtXjs\"",
        .........
        .........

この結果では、 "nextPageToken": "CDIQAA"、を参照してください。

APIにpageTokenパラメーターを追加します

例:

https://www.googleapis.com/youtube/v3/playlists?part=snippet,contentDetails&channelId=UCqrA&maxResults=50&key=AIZsk&pageToken=CDIQAA

これが結果です。nextPageTokenとprevPageTokenを取得します

{
"kind": "youtube#playlistListResponse",
"etag": "\"XpPGQX4Qk/R3A6jpxuE\"",
"nextPageToken": "CGQQAA",
"prevPageToken": "CDIQAQ",
"pageInfo": {
    "totalResults": 585,
    "resultsPerPage": 50
},
"items": [
    {
        "kind": "youtube#playlist",
        "etag": "\"XpPGQXR4Qk/XsatNRtxJQ\"",

        .........
        .........
2
iOS