ios - 有没有办法在标准 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 库。如果是这样,如何做到这一点?
解决方案
使用 Google 提供的“OAuth 2.0 for Web Server”指南似乎可以兑换serverAuthCode
iOS 库生成的内容。
标题为“第 5 步:为刷新和访问令牌交换授权代码”的部分记录了这个简单的过程。
尽管它要求 aredirect_uri
这并不重要,因为它只需要在 Google 上注册并且实际上不会发生重定向。