web-dev-qa-db-fra.com

google plus api: erreur "insuffisance des autorisations"

Je recherche sur google plus avec api

Voici mon URL: https://www.googleapis.com/plus/v1/activities?query=internet%20marketing&access_token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

voici la réponse:

{
   "error": {
     "errors": [
      {
         "domain": "global",
         "reason": "insufficientPermissions",
         "message": "Insufficient Permission"
      }
     ],
   "code": 403,
   "message": "Insufficient Permission"
   }
}

Voici mon écran CONSOLE API http://i.stack.imgur.com/jO27J.png

Quelqu'un peut-il dire de quelle autorisation j'ai besoin pour configurer mon application dans la console API. ?

28
butanijayanti

Il s'agit d'un problème avec votre jeton d'accès, pas avec la configuration de votre projet.

L'erreur des autorisations insuffisantes est renvoyée lorsque vous n'avez pas demandé les étendues dont vous avez besoin lorsque vous avez récupéré votre jeton d'accès. À une supposition, puisque vous utilisez l'API Google+ et l'API YouTube, vous n'avez peut-être demandé que la portée YouTube et pas les deux, c'est-à-dire:

Vérifiez que vous avez demandé les deux:

https://www.googleapis.com/auth/youtube
https://www.googleapis.com/auth/plus.login

et pas seulement le premier.

Vous pouvez vérifier les étendues que vous avez demandées en transmettant votre access_token à ce point de terminaison:

https://www.googleapis.com/oauth2/v1/tokeninfo?access_token=ACCESS_TOKEN

Je ne peux pas vérifier le jeton dans votre exemple car il a expiré (les jetons d'accès expirent après une heure). De même, veuillez ne pas publier publiquement les jetons d'accès car ils permettent à d'autres d'accéder à vos données - ils doivent être gardés secrets et traités avec soin.

Par ailleurs, https://www.googleapis.com/plus/v1/activities?query=QUERY est un appel non authentifié, vous pouvez donc transmettre votre clé API pour votre projet plutôt qu'un jeton d'accès. Si vous effectuez l'appel avec https://www.googleapis.com/plus/v1/activities?query=QUERY&key=API-KEY , vous n'avez pas besoin de demander des étendues ou de récupérer un accès jeton du tout.

Si vous ne l'avez pas déjà vu, vous pouvez essayer les appels d'API que vous souhaitez effectuer sur le OAuth 2.0 Playground:

https://developers.google.com/oauthplayground/

C'est un bon endroit pour voir ce qui fonctionne et ce qui ne fonctionne pas.

68
Lee

Selon la réponse de @Lee, le point de terminaison de validation AccessToken de Google V3 OAuth est maintenant:

https://www.googleapis.com/oauth2/v3/tokeninfo?access_token=<access_token>

Vous pouvez consulter le document google ci-dessous: (Dans OAUTH 2.0 ENDPOINTS Tab)

https://developers.google.com/identity/protocols/OAuth2UserAgent#validate-access-token

1
Nick Tsai

Javascript

var OAUTH2_SCOPES = [
  'https://www.googleapis.com/auth/youtube',
  https://www.googleapis.com/auth/plus.login
];

pour récupérer les commentaires de l'API YouTube, ajoutez https://www.googleapis.com/auth/plus.login ceci dans le tableau OAUTH2_SCOPES

1
D V Yogesh