当我使用youtube api时,为什么我收到了未经授权的消息

时间:2017-06-22 20:00:06

标签: javascript ajax youtube

我正在尝试获取要显示的播放列表列表,并将我的ajax调用设置为:

function loadData(){


    if(GoogleAuth.currentUser.get().hasGrantedScopes(SCOPE)){
        $.ajax({
            url:'https://www.googleapis.com/youtube/v3/playlists',
            data:{
                'key':'AIzaSyD0OY6xhl9gP9CmPXvU-rN-purRDaTrip8',
                'mine':'true',
                'maxResults':'5',
                'part':'snippet,contentDetails'
            },
            sucess:function(data){
                console.log(data);
            },
            error:function(data){
                console.log(data.responseText);
            }
        });
    }



}

此代码仅在页面完全加载并且用户已选择登录后才会运行。如果他们确实登录了应该构建的播放列表列表。我已经启用了我的api密钥,确保我的来源被列入白名单,以及我能想到的其他所有内容。 但是我一直得到这样的答复:

 "error": {
  "errors": [
   {
    "domain": "youtube.parameter",
    "reason": "authorizationRequired",
    "message": "The request uses the \u003ccode\u003emine\u003c/code\u003e parameter but is not properly authorized.",
    "locationType": "parameter",
    "location": "mine"
   }
  ],
  "code": 401,
  "message": "The request uses the \u003ccode\u003emine\u003c/code\u003e parameter but is not properly authorized."
 }

我已确保包装ajax调用以确保用户已登录。所以我不确定为什么我收到此错误消息。我仍然掌握api电话,所以如果我忘了添加内容,请告诉我。从我从谷歌文档中可以看出,这应该是我所需要的。

1 个答案:

答案 0 :(得分:0)

mine

  

boolean此参数只能在properly authorized request中使用。将此参数的值设置为true以检索。的提要   经过身份验证的用户活动

正确授权的请求意味着他们实施OAuth 2.0授权 如上面的链接所示。 要实施OAuth 2.0授权,请按照此处的说明进行操作:

https://developers.google.com/youtube/v3/guides/auth/client-side-web-apps