2015-05-13 29 views
11

Tutto ha funzionato bene fino ad oggi quando ho ricevuto un'email da LinkedIn indicando alcune significative modifiche API. E successivamente vedevo Eccezioni durante l'autenticazione degli utenti tramite. LinkedIn.LinkedIn OAuth Exception Scope NOT_AUTHORIZED r_fullprofile

In seguito è l'eccezione da tronchi

OAuth::Problem (Scope NOT_AUTHORIZED : r_fullprofile): 
    oauth (0.4.7) lib/oauth/consumer.rb:178:in `request' 
    oauth (0.4.7) lib/oauth/consumer.rb:194:in `token_request' 
    oauth (0.4.7) lib/oauth/consumer.rb:136:in `get_request_token' 

logica OAuth per ottenere richiesta di token.

consumer = OAuth::Consumer.new(LINKED_IN_API_KEY, LINKED_IN_SECRET_KEY, 
       { 
        :site    => "https://api.linkedin.com", 
        :scheme    => :header, 
        :http_method  => :post, 
        :request_token_path => "/uas/oauth/requestToken?scope=r_fullprofile", 
        :access_token_path => "/uas/oauth/accessToken", 
        :authorizeEmapath  => "/uas/oauth/authorize" 
       }) 

### Exception occurs at this call. 
request_token = consumer.get_request_token(:oauth_callback => callback_url) 

E-mail da LinkedIn

enter image description here

mia analisi fino ad ora

Se cambio lo scopo di r_basicprofile esso w funziona bene ma poi non ricevo le informazioni skills dell'utente linkedin autenticato.

Quali dovrebbero essere le modifiche aggiuntive che devo fare per rendere sufficiente la modifica dell'API?

risposta

3

Ho provato questo https://api.linkedin.com/v1/people/~:(id,first-name,skills,educations,languages,twitter-accounts)?format=json a https://apigee.com/console/linkedin.

Sta dando competenze all'apigeo, ma qui https://developer.linkedin.com/docs/fields, le competenze sono qualcosa che dovrebbe essere approvato da Linkedin.

+0

Funziona con OAuth 2.0. Ma sto cercando di autorizzare con '/ uas/oauth/requestToken'. Che è OAuth1a. – swapab

+0

Io ho trovato la mia risposta. http://stackoverflow.com/a/29286533/1125893 r_fullprofile può essere richiesto ma con la strategia 'Apply-with-linkedIn'. – swapab

+1

@ swap.nil, ecco il link per l'applicazione con Linked se ne hai bisogno [link] (https://help.linkedin.com/app/ask/path/api-dvr) – Nikesh

5

A partire da May 12, 2015, Linkedin ha limitato le API aperte.

L'accesso agli ambiti r_fullprofile richiede che venga richiesto e concesso l'accesso a tali informazioni da LinkedIn. I campi del profilo completo sono disponibili solo per le applicazioni che sono state applicate e approvate per il caso d'uso Apply with LinkedIn.

SOLUZIONE:

richiedere lo status di socio con LinkedIn, spiegando ciò che la vostra integrazione è e come funziona. Se soddisfa i criteri di "riteniamo che stiano fornendo valore a membri, sviluppatori e LinkedIn", quindi alcuni o tutti gli endpoint restrittivi rimarranno aperti per quell'app e SOLO quella app.

campi del profilo membro

La seguente selezione di campi del profilo sono disponibili per tutti gli sviluppatori LinkedIn:

  1. base Campi Profilo
  2. Località Campi
  3. Posizione campi

campi del profilo Stati disponibili per applicare con gli sviluppatori di LinkedIn:

La seguente selezione di campi del profilo sono disponibili solo per le applicazioni che hanno presentato domanda e sono stati approvati per l'Applicare con LinkedIn Caso d'uso:

  1. completi Campi Profilo
  2. Informazioni di contatto I campi
  3. società campi
  4. pubblicazione campi
  5. campi brevetti
  6. Lingua Campi
  7. Abilità campi
  8. Certificazione campi
  9. Corso Campi
  10. Istruzione campi
  11. Volontariato Campi

Partenza questo linkedin page per maggiori dettagli su cui sono disponibili per i campi tutti gli sviluppatori e quali no.