新LinkedIn权限 - 范围未被通信

时间:2012-08-28 14:14:16

标签: ruby-on-rails authentication permissions omniauth linkedin

LinkedIn最近更改了他们的API,要求第三方更明确地说明他们要求的信息。为了访问用户过去的工作历史和omniauth教育,您必须传递r_fullprofile权限令牌(之前,您不必为过去的工作或教育数据提出具体要求)。要访问用户的电子邮件地址,您需要传递r_emailaddress权限令牌。在有人要求之前,我正在使用新的LinkedIn API密钥(旧密钥不受最近更改的影响)。

最近更新了omniauth-linkedin gem以说明LinkedIn的权限更改,但我仍然遇到通过authentication flow所有部分传递此新范围参数的问题。我按照omniauth-linkedin自述文件中提供的说明创建我的config / omniauth.rb文件:

Rails.application.config.middleware.use OmniAuth::Builder do
  provider :linkedin, ENV['LINKEDIN_KEY'], ENV['LINKEDIN_SECRET'], 
  :scope => 'r_fullprofile,r_emailaddress', :fields => ['id', 'email-address', 'first-name', 'last-name', 'headline', 'industry', 'picture-url', 'public-profile-url', 'location', 'positions']
end

范围似乎成功通过身份验证的第一部分,在下面的第一个屏幕截图中可见(您的完整个人资料...您的电子邮件地址):

authentication_first_step

但是,在用户输入凭据后,范围似乎丢失,只传输默认的“您的个人资料概述”字段:

enter image description here

非常坚持这一点并且可以真正使用一些帮助,因为我需要为我的用户提供完整的个人资料和教育数据。如果我需要提供我的auth_controller代码,请告诉我。谢谢。

0 个答案:

没有答案