首页 > 解决方案 > 有没有办法在标准 HTTPS 请求中兑换 serverAuthCode?

问题描述

https://developers.google.com/identity/sign-in/ios/offline-access上的文档展示了如何serverAuthCode在 Swift 中获取 a。

这允许您自己的服务器将此代码兑换为 Oauth 访问令牌,并代表用户向 Google 发出 API 请求。

func sign(_ signIn: GIDSignIn!, didSignInFor user: GIDGoogleUser!, withError error: Error!) 
    let code = user.serverAuthCode
    // send it to the server
}

但是,该指南仅以 Java 或 Python 演示了该过程的服务器端部分。

是否可以serverAuthCode仅使用 HTTPS 请求来兑换它 - 没有 Java/Python 库。如果是这样,如何做到这一点?

标签: iosswiftoauth-2.0google-oauthgoogle-signin

解决方案


使用 Google 提供的“OAuth 2.0 for Web Server”指南似乎可以兑换serverAuthCodeiOS 库生成的内容。

标题为“第 5 步:为刷新和访问令牌交换授权代码”的部分记录了这个简单的过程。

尽管它要求 aredirect_uri这并不重要,因为它只需要在 Google 上注册并且实际上不会发生重定向。


推荐阅读