我正在开发一个应用程序,使用户能够创建一个帐户并登录。所以我使用omniauth,一切都像魅力。唯一让我烦恼的是Facebook的授权(和登录)对话框,它始终要求用户为我的应用程序提供访问其数据的权限。完整的信息是:
为了增强您的体验,[App name]还希望获得以下权限:
随时访问您的数据 [App name]可能会在您不使用该应用程序时访问您的数据
听起来令人毛骨悚然,我的应用范围也没有必要。
我的身份验证对话框设置中的“扩展权限”字段为空,对话框预览似乎正常。但是当我通过注册时,上面的请求会出现。
有人知道如何解决此问题吗?
答案 0 :(得分:2)
听起来你是应用程序正在请求离线权限。希望这可以帮助您确定问题所在。
答案 1 :(得分:2)
我的Omniauth初始化程序看起来像这样:
Rails.application.config.middleware.use OmniAuth::Builder do
provider :twitter, 'ABC', 'DEF'
provider :facebook, 'UVW', 'XYZ'
end
我认为这会导致对基本用户信息的简单请求。
经过一些研究后,我发现了这个教程:https://github.com/plataformatec/devise/wiki/OmniAuth:-Overview
所以我尝试了这个,它就像一个魅力:
Rails.application.config.middleware.use OmniAuth::Builder do
provider :twitter, 'ABC', 'DEF'
provider :facebook, 'UVW', 'XYZ', {:scope => 'email'}
end
不再令人毛骨悚然“我想要你的数据 - 即使在你睡觉的时候也是如此”。