ios - 如何从刷新 token 获取访问 token ?

标签 ios swift google-api google-oauth google-signin

我有一个 iOS Swift 应用程序,它使用 Google Cloud Prediction API 来确定一些图像。经过一些预测后, session 将过期,并且必须将用户重定向到登录页面。我希望应用程序从刷新 token 获取新的访问 token ,而不是重定向到登录,如 Google 文档 here 中所述。 .

我关注了this登录链接,并已成功将 Google SignIn 集成到我们的应用程序中。 我的要求是从刷新 token 获取访问 token ,以便在 session 过期时我可以使用新 token 静默登录。 请提供端点详细信息以及要遵循的所有步骤。

我已完成此 link 中提供的步骤。在第 6 步中,他们提供了 Java/Python 中的服务器端代码,用于从刷新 token 获取访问 token 。如何获取可从 iOS 应用程序使用的 REST API 详细信息?

最佳答案

启动应用程序时并不总是会调用 tokenRefreshNotification 函数。

AppDelegate.swift

import Firebase

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {

    FirebaseApp.configure()
    return true
}

但是,当将代码放入常规 didRegisterForRemoteNotificationsWithDeviceToken 委托(delegate)函数中时,我每次都可以获得 token :

func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
    if let refreshedToken = InstanceID.instanceID().token() {
        print("InstanceID token: \(refreshedToken)")
    }
}

关于ios - 如何从刷新 token 获取访问 token ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55762177/

相关文章:

python - Ubuntu中安装python google api

azure - 从 Azure 网站调用 Google Api 时出现 502 无效响应

ios - 在静态 tableView 的底部设置按钮

ios - swift ,dispatch_group_wait 不等待

ios - 类型 'NSArray' 的值没有成员 'indices'

c# - 尝试创建新事件时出现身份验证范围不足错误

iphone - [CF字典计数] : message sent to deallocated instance

iphone - 如何在运行时在 iPhone sdk 中删除图像背景

ios - 无法识别的选择器发送到实例 NSTimer Swift

php - 将 JSON 字典值存储到变量中