大家好,Stackoverflow 社区,
我正在尝试配置一个 Web 应用程序以利用某些 Google 范围。我希望用户可以批准或拒绝所有权限。
这正是我在操作 Google OAuth Playground 时得到的行为:
可以看到,每个权限都有一个“实心圆”,无法取消选择。用户要么允许访问所有列出的范围,要么拒绝访问所有范围。
但是,在我的应用中,每个权限都映射到可以 允许 或 拒绝 的弹出窗口。此外,在最后,同样的同意屏幕会显示,但用户可以 选择/取消选择 某些权限(复选框)。
虽然这听起来更加细致,但我认为这也更加令人困惑,而且需要扩展我的应用程序逻辑,因为我需要仔细检查是否已授予所有范围的权限。我确实需要这两个权限来完成我的工作,所以只有一个范围对我没有用,我可能需要重新触发授予权限的过程:这实际上是我试图避免的。我的意思是,处理 完全拒绝 的情况没问题,但是部分范围的批准不是我想要的。
解决方案就是模仿 Google OAuth Playground 的操作。
我已在我的同意屏幕配置中显式添加了这些范围(现在处于审核状态)。但仍然出现此行为。
我可能缺少到 oAuth URL 的哪个配置或参数才能获得精确的行为?
谢谢!
drive.appdata
,这不是敏感或受限制的),并且也验证了我的应用程序。然而,我仍然看到权限的复选标记(即使最初未选中该复选框)。你有任何想法为什么会出现这种情况吗? - MaxGoogleSignIn.requestPermissions()
请求权限。在使用权限之前,您还需要检查应用程序是否具有所需的权限,可以使用GoogleSignIn.hasPermissions()
进行检查。 - Max