Как получить данные пользователя Linkedin?

Я использую Linkedin API для получения пользовательского контента в проекте RoR. Я слежу за этим блогом. Вот код контроллера:

Базовый профиль (который отлично работает)

client = get_client
profile = client.profile(:fields => ["first-name", "last-name", "maiden-name", "formatted-name" ,:headline, :location, :industry, :summary, :specialties, "picture-url", "public-profile-url"])

Опыт и должности:

client = get_client
positions = client.profile(:fields => [:positions]).positions.all

Для образования:

client = get_client
educations = client.profile(:fields => [:educations]).educations.all

Принимая во внимание, что get_client

def get_client
linkedin_oauth_setting = LinkedinOauthSetting.find_by_user_id(current_user.id)
client = LinkedIn::Client.new('aaadad', 'dadada', @@config)
client.authorize_from_access(linkedin_oauth_setting.atoken, linkedin_oauth_setting.asecret)
client
end

Для области я установил:

:request_token_path => '/uas/oauth/requestToken?scope=r_fullprofile'

Я могу получить базовую информацию профиля, но не другие. Для других полей я получаю пустое []. Что я здесь делаю неправильно?


person Amit Pal    schedule 21.11.2015    source источник
comment
Вы уверены, что ваш API-ключ позволяет просматривать полную информацию о профиле? Они могут ограничивать объем данных, которые вы можете получить от пользователя. Это всего лишь предположение, так как я не знаком с их API.   -  person theartofbeing    schedule 22.11.2015
comment
Ах! ты прав. Теперь я получаю ошибку No scope undefined в r_fullprofile, но если я изменю ее на r_basicprofile, по крайней мере, я смогу получить базовый профиль. Я где-то читал, что нам нужно заполнить эту форму developer.linkedin.com/partner-programs/apply< /а>. Это правильно? для доступа к должностям и навыкам мне нужна r_fullprofile доступность? для объема r_fullprofile нужно ли мне заполнять форму партнерских программ?   -  person Amit Pal    schedule 22.11.2015
comment
@AmitPal Я бы предложил закрыть этот вопрос, так как он кажется решенным. Я бы также посоветовал задавать вопросы о подаче заявки на API на форуме, но не на этом сайте. LinkedInDevs или другая среда были бы лучше.   -  person onebree    schedule 24.11.2015
comment
@HunterStevens Я все еще в замешательстве. то, что я написал в комментарии, правильно или нет?   -  person Amit Pal    schedule 24.11.2015
comment
Некоторые пользователи не читают комментарии, если у них нет той же проблемы. Большинство пользователей увидят ваш вопрос как оставшийся без ответа и просто проигнорируют его (потому что сами не знают ответа). Я хочу сказать, что вы можете получить наилучшие отзывы, спросив о процессе подачи заявки в чате, на форуме или где-то еще.   -  person onebree    schedule 24.11.2015
comment
@HunterStevens Да, я понял вашу точку зрения, но для LinkedIn нет форума поддержки разработчиков, и я не вижу другого лучшего варианта. Пожалуйста, дайте мне знать, если вы знаете какую-либо другую хорошую платформу?   -  person Amit Pal    schedule 24.11.2015


Ответы (1)


Я думаю, вам нужно попросить у Linkedin специальное разрешение для доступа к этим данным. r_fullprofile предназначен только для зарегистрированных API.

  • Данные, не требующие специальной авторизации: r_basicprofile
  • Данные, необходимые для участия в партнерской программе LinkedIn: r_fullprofile (см. здесь)

Ознакомьтесь с этой документацией на веб-сайте Linkedin.

Чтобы подать заявку на участие в программе Linkedin, посетите эту страницу

Я подал заявку сегодня утром, и они сказали, что вернутся ко мне в течение 15 дней.

Удачи!

person Céline Martinet Sanchez    schedule 24.11.2015
comment
Похоже, я могу получить доступ к position в области r_basicprofile. Всем разработчикам LinkedIn доступен следующий набор полей профиля: поля основного профиля, поля местоположения, поля должности. Я получаю [] или Mash 0. Почему это так? - person Amit Pal; 24.11.2015
comment
Если вы хотите получить доступ к позициям, вам необходимо: 1/ добавить позиции в конфигурацию omniauth и 2/ получить их с помощью (например) oauth.extra.raw_info.positions. Вы получите хэш с позициями вашего пользователя. суть здесь - person Céline Martinet Sanchez; 24.11.2015