使用带有自定义域的react-native-google-signin

术语

我在网络上有google登录,还有一个React Native应用(Android和ios)。

我可以在两个平台上登录,但令牌数据不同(由于该应用程序的令牌无效)

我看了看文档并尝试了不同领域的多个参数,但没有成功

应用配置:

      // scopes: ['profile', 'email'], // it doesn't matter if commented or not
      // webClientId: '**********.apps.googleusercontent.com', //
      // offlineAccess: false, // if you want to access Google API on behalf of the user FROM YOUR SERVER
      // hostedDomain: 'https://securetoken.google.com/**********', // if I use this, (or other strings I tried, cant login
      // loginHint: '',
      forceConsentPrompt: true,
      accountName: '**********', // 
      // accountName: '**********:android:**********', // nothing happens
      iosClientId: '**********.apps.googleusercontent.com', // is different from the android one

Web配置(使用Firebase):

      apiKey: "**********",
      authDomain: "**********.firebaseapp.com",
      databaseURL: "https://**********.firebaseio.com",
      projectId: "**********",
      storageBucket: "",
      2: "**********",
      appId: "**********:web:**********"

网络令牌信息:

 {
    "iss": "https://securetoken.google.com/**********",
    "aud": "**********",
    "sub": "**********",
    "email": "**********@gmail.com",
    "email_verified": true,
    "name": "**********",
    "picture": "**********",
    "auth_time": 1568973313,
    "user_id": "**********",
    "sign_in_provider": "google.com",
    "iat": **********,
    "exp": **********,
    "firebase": {
      "identities": {
        "google.com": ["**********"],
        "email": ["**********@gmail.com"]
      }
    }
  }

应用令牌信息:

 {
    "iss": "https://accounts.google.com",
    "azp": "**********.apps.googleusercontent.com",
    "aud": "**********.apps.googleusercontent.com",
    "sub": "**********",
    "email": "**********@gmail.com",
    "email_verified": true,
    "name": "**********",
    "picture": **********",
    "given_name": "**********",
    "family_name": "**********",
    "locale": "es",
    "iat": **********,
    "exp": **********
  }
术语

我也设法使用firebase(firebase.initializeApp(/ params /))解决了这个问题,首先我使用登录名,react-native-google-signin然后,如果成功,则使用firebase登录以获取正确的令牌:

// login with google, on web is unnecesary, to use native interface
const { user } = await GoogleSignin.signIn();
const googleTokens = await GoogleSignin.getTokens();

// login with firebase, to get the correct token
const credential = firebase.auth.GoogleAuthProvider.credential(googleTokens.idToken, googleTokens.accessToken);
const auth = firebase.auth();
await auth.signInWithCredential(credential);

// get firebase token and user email
const idToken = auth.currentUser && (await auth.currentUser.getIdToken(true));
const email = user && user.email;

// login into my back
if (idToken && email) googleLogIn(email, idToken);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

是否可以在不付费的情况下配置Google App Engine自定义域?

来自分类Dev

Google Apps引擎已不再提供免费服务,现在可以使用Google App Engine自定义域

来自分类Dev

具有自定义域的Google App Engine通道API

来自分类Dev

自定义域映射到Google App Engine模块或版本

来自分类Dev

Google Compute Engine服务器的自定义域

来自分类Dev

使用不同版本的应用程序通过SSL在Google App Engine上设置自定义域(带有子域)

来自分类Dev

Namecheap中的Google App Engine自定义域

来自分类Dev

自定义域上的Google App Engine Cron作业

来自分类Dev

如何在Google App Engine中使用带有自定义域(https)的Sendgrid发送电子邮件

来自分类Dev

Google的自定义域未路由到App Engine网站

来自分类Dev

如何使用Typescript在Angular 2中使用Google实现SignIn

来自分类Dev

如何使用domains.google.com验证我的自定义域

来自分类Dev

令牌被吊销后,Google SignIn崩溃

来自分类Dev

我可以在整个应用程序中使用Google SignIn令牌吗?

来自分类Dev

AWS Cognito-放大:Auth.signIn,无论什么返回React Native中的NotAuthorizedException

来自分类Dev

在iOS中使用Google SignIn后无法获取Authcode(Swift)

来自分类Dev

react-native-google-signin和android.support.v4.net不存在错误

来自分类Dev

Google App Engine-使用Google Domains中的自定义域时出现404错误

来自分类Dev

无法添加带有Google App Engine的自定义域

来自分类Dev

使用Google App Engine应用程序的自定义域

来自分类Dev

google-signin不返回用户信息

来自分类Dev

如何同时使用Polymer的google-client-loader和google-signin?

来自分类Dev

使用 Unity 构建此 ios 项目,添加了 google signin SDK 4.0.1 框架,出现错误

来自分类Dev

Google Cloud Platform Bucket:通过 https 提供具有自定义域的内容

来自分类Dev

在构建 React Native 项目时获取 react-native-google-signin:compileReleaseJavaWithJavac FAILED

来自分类Dev

Azure 或 Google Cloud 是否原生支持通过 https 使用自定义域来提供内容

来自分类Dev

如何使用 Google API 在 App Engine 中添加自定义域映射?

来自分类Dev

在 Google Domains 上购买的自定义域上的 Google App Engine

来自分类Dev

如何确定用户之前是否已使用 google firebase signin 登录

Related 相关文章

  1. 1

    是否可以在不付费的情况下配置Google App Engine自定义域?

  2. 2

    Google Apps引擎已不再提供免费服务,现在可以使用Google App Engine自定义域

  3. 3

    具有自定义域的Google App Engine通道API

  4. 4

    自定义域映射到Google App Engine模块或版本

  5. 5

    Google Compute Engine服务器的自定义域

  6. 6

    使用不同版本的应用程序通过SSL在Google App Engine上设置自定义域(带有子域)

  7. 7

    Namecheap中的Google App Engine自定义域

  8. 8

    自定义域上的Google App Engine Cron作业

  9. 9

    如何在Google App Engine中使用带有自定义域(https)的Sendgrid发送电子邮件

  10. 10

    Google的自定义域未路由到App Engine网站

  11. 11

    如何使用Typescript在Angular 2中使用Google实现SignIn

  12. 12

    如何使用domains.google.com验证我的自定义域

  13. 13

    令牌被吊销后,Google SignIn崩溃

  14. 14

    我可以在整个应用程序中使用Google SignIn令牌吗?

  15. 15

    AWS Cognito-放大:Auth.signIn,无论什么返回React Native中的NotAuthorizedException

  16. 16

    在iOS中使用Google SignIn后无法获取Authcode(Swift)

  17. 17

    react-native-google-signin和android.support.v4.net不存在错误

  18. 18

    Google App Engine-使用Google Domains中的自定义域时出现404错误

  19. 19

    无法添加带有Google App Engine的自定义域

  20. 20

    使用Google App Engine应用程序的自定义域

  21. 21

    google-signin不返回用户信息

  22. 22

    如何同时使用Polymer的google-client-loader和google-signin?

  23. 23

    使用 Unity 构建此 ios 项目,添加了 google signin SDK 4.0.1 框架,出现错误

  24. 24

    Google Cloud Platform Bucket:通过 https 提供具有自定义域的内容

  25. 25

    在构建 React Native 项目时获取 react-native-google-signin:compileReleaseJavaWithJavac FAILED

  26. 26

    Azure 或 Google Cloud 是否原生支持通过 https 使用自定义域来提供内容

  27. 27

    如何使用 Google API 在 App Engine 中添加自定义域映射?

  28. 28

    在 Google Domains 上购买的自定义域上的 Google App Engine

  29. 29

    如何确定用户之前是否已使用 google firebase signin 登录

热门标签

归档