我有一个应用程序运行成功的Google和Facebook全方位身份验证运行。我也想用omniauth添加Linkedin登录。一切似乎都很好,直到我通过将:scope => 'r_emailaddress'添加到该行来请求电子邮件地址
设计.rb
config.omniauth :linkedin, ENV['LINKEDIN_CLIENT_ID'], ENV['LINKEDIN_CLIENT_SECRET'], :scope => 'r_emailaddress', :fields => ['email', 'id', 'first-name', 'last-name']
如果我删除了r_emailaddress并添加了任何其他范围,如r_liteprofile,那么一切似乎都是正确的
config.omniauth :linkedin, ENV['LINKEDIN_CLIENT_ID'], ENV['LINKEDIN_CLIENT_SECRET'], :scope => 'r_liteprofile', :fields => ['email', 'id', 'first-name', 'last-name']
宝石文件
gem 'omniauth-linkedin-oauth2'
成功将所有凭据放在Linkedin页面上后,后端和前端出现错误,应用程序重定向到主页并且在UI中没有给出任何错误。
它在日志中抛出的错误是
ERROR -- omniauth: (linkedin) Authentication failure! invalid_credentials: OAuth2::Error, :
{"serviceErrorCode":100,"message":"Not enough permissions to access: GET /me","status":403}
如果有人能在这件事上帮助我,那就太好了。