新LinkedIn权限 - 范围未被通信

key*_*ons 9 authentication permissions ruby-on-rails linkedin omniauth

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

omn​​iauth,LinkedIn宝石最近进行了更新,以考虑LinkedIn的权限更改,但我仍然有通过这个新的范围参数通过问题所有的部分认证流程.我按照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
Run Code Online (Sandbox Code Playgroud)

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

authentication_first_step

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

在此输入图像描述

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