Я использую драгоценный камень LinkedIn OAuth 2.0. Прямо сейчас я могу заставить его создать страницу входа в систему linkedin. Однако следующее, что должно произойти, это отправить на мою ссылку обратного вызова код, который я использую для создания токена доступа. Проблема в том, что переменная oauth генерируется в действии аутентификации, но затем ее необходимо снова использовать в действии обратного вызова. Я попытался снова сгенерировать переменную oauth, используя те же самые параметры, но когда я это делаю, я получаю ошибку сертификата SSL. Похоже, что в обоих случаях необходимо использовать один и тот же экземпляр oauth. Дайте мне знать, если у вас есть какие-либо мысли. Мой код ниже:
def authenticate
require "linkedin-oauth2"
LinkedIn.configure do |config|
config.client_id = "Mycode"
config.client_secret = "Mysecret"
# This must exactly match the redirect URI you set on your application's
# settings page. If your redirect_uri is dynamic, pass it into
# `auth_code_url` instead.
config.redirect_uri = "http://localhost:3000/auth/linkedin/callback"
end
oauth = LinkedIn::OAuth2.new()
url = oauth.auth_code_url
redirect_to url
end
def callback
require "linkedin-oauth2"
code = params[:code]
access_token = oauth.get_access_token(code)
api = LinkedIn::API.new(access_token)
my_job_titles = api.profile(fields: ["id", {"positions" => ["title"]}])
puts my_job_titles
redirect_to("/")
end
конец