Google Picker API身份验证令牌采用何种格式?

时间:2018-03-12 23:13:11

标签: firebase oauth-2.0 google-api jwt google-oauth

如果我从此页面上的示例中截取access_token

https://developers.google.com/picker/docs/

......看起来像这样:

ya29.Glx7BW_OsFJ1CSjJ_kdt9iZixJAZHjvllMtJO09EccpURJPbCXudNP6teBz6HZ0T_ioaQLNna323UPpBQN-N0aCLWXfDVCvq4xXkbi5kKQhfwS0xakcsrNmzD5B8OA

如果我将其粘贴到此处:

https://jwt.io/

......我告诉它的情况不正常。但是,如果我将Firebase身份验证令牌粘贴到其中,那么它的格式正确,您可以看到其有效负载。

最终,我尝试在Google Picker API中使用Firebase身份验证令牌,但我无法弄清楚如何翻译它。

3 个答案:

答案 0 :(得分:0)

我使用的是firebase.auth().currentUser.getIdToken,但看起来firebase.auth().getRedirectResult()获得的身份验证令牌与Picker API的格式相同。

答案 1 :(得分:0)

Google API访问权限基于范围https://developers.google.com/identity/protocols/googlescopes

您必须指定请求访问令牌时所需的范围。

您收到的每个访问令牌仅限于原始请求中的范围和应用程序。它们不可互换。

您需要设置特定的Google Picker API请求,才能获得所需的访问令牌https://developers.google.com/identity/protocols/OAuth2

希望这有帮助

答案 2 :(得分:0)

" ya29 *" token是Google的访问令牌,它不是jwt(对于api调用者来说是不透明的)。 是的firebase允许您在登录过程中添加范围。之后,您将获得一个ID令牌,其中显示用户是谁以及可用于访问Google API的单独访问令牌。 如果你看https://firebase.google.com/docs/auth/web/google-signin,你会看到:

echo '<a href="test.com', urlencode(."Villeneuve d'ascq".), '">test</a>';