2015-03-11 17 views
6

doğruladım, aşağıdaki sorunla sona erdi. Ember.js ile bir web uygulaması yapıyorum ve şu anda Linkedin javascript sdk'yi kullanarak LinkedIn girişini uyguluyorum. Sahip olduğum problem, kullanıcı bilgilerini (jeton, e-posta, ad ve vb.) Aldıktan sonra sunucu oturumunda bu oturumu doğrulamak için oturumun büyük olması gerektiğidir. Maalesef, belgeler benim için çok net değil. IN.ENV.auth kullanarak belirteci (veya bir simge) erişebilirim, ancak her ikisinden birini doğrulamaya çalıştığımda "geçersiz istek" aldım. Ben düğümü ve bir örnek kod kullanıyorum Sunucu tarafında böyle bakmak: sdk danLinkedIn 1 günlük araştırma sonrasında kullanıcı auth jetonu sunucu tarafı

var request = require('request'); 
var options = { 
    url: 'https://www.linkedin.com/uas/oauth2/accessToken?grant_type=authorization_code&code=TOKEN_RECIEVED_THROUGH_IN.ENV.auth&redirect_uri=my-domain&client_id=API_CLIENT_ID&client_secret=API_SECRET_KEY' 
}; 
request(options,function(err,res,body){ 
    console.log(body); 
}); 

tepki böyledir:

anonymous_expires_in: 1800 
anonymous_token: "4u948tas123asfK9DJx9HFYJgcsBFlhIFu93gG" 
api_key: "API_KEY" 
is_set_client_auth_cookie: false 
member_id: "4a13sdasFeD" 
oauth_expires_in: 1800 
oauth_token: "66Dy9V123lL7H823ddl-5L-KVmg184k0dhAaS" 

Teşekkür peşin.

cevap

2

JS SDK'dan ve sunucu tarafındaki OAuth'dan verilen auth tokenleri aynı değil.

REST API/sunucu tarafı kodu ile ilgili JS belirteci alışverişinde açıklar LinkedIn'in geliştirici web sitesinde belgelenmiş bir süreç vardır: https://developer-programs.linkedin.com/documents/exchange-jsapi-tokens-rest-api-oauth-tokens

+2

URL bulunmayan bazı ayrıntılar da cevap eklemeniz gerekir. Bu cevap şimdi yararlı değil –

+0

@SameerKazi, merhaba, çözüm bulmayı başardınız mı? Aynı yaklaşımla çalışıyorum, ancak bu belgeyi de bulamıyorum. OAuth2'nin yalnızca REST API çağrıları için kullanılabilecek erişim belirtecine sahip olacağı için bu durumun gelecekte kaldırılacağını okudum. – EnterSB

+1

Şu anda, LinkedIn API'leri aracılığıyla jeton doğrulamasını gerçekleştirmek için kullanılabilir uç nokta yok. Sadece talep edebilirsiniz (ve özel bir alt durum: yenileme) OAuth 2 jetonları. –

7

Öyle görünüyor ki sadece GET isteğine başlığını oauth_token eklerseniz, o Çalışırlar:

GET /v1/people/~:(id,firstName,lastName,siteStandardProfileRequest,picture-url,email-address)?format=json HTTP/1.1 
Host: api.linkedin.com 
oauth_token: your-token-here 

PS Ama

Sen sahip olmak isteği yaparak bunu başarabilirsiniz ... Ben Postman'a veya vs aracılığıyla belirteci geçerliliğini kontrol etmek gerekiyor biri için

+1

benim için çalıştı. Teşekkürler! – Zackie

+0

Teşekkürler, basit ve temiz, benim için çalışıyor –

1

okumamış dokümantasyon çünkü sürekli çalışacağından emin değilim bir sonraki parametreler ...

Örnek:

Method GET: 
https://api.linkedin.com/v1/people/~?format=json 

Headers: 
Authorization Bearer "here you add your access token" 
Content-Type application/json 
x-li-src msdk 
İlgili konular