Ant*_*rov 9 javascript linkedin node.js
经过一天的研究,我结束了以下问题.我正在使用ember.js构建一个Web应用程序,目前我正在使用linkedin javascript sdk实现LinkedIn登录.我遇到的问题是,在收到用户信息(令牌,电子邮件,名字等)后,我需要在服务器端验证此令牌以进行盛会.不幸的是,文档对我来说不是很清楚.我可以使用IN.ENV.auth访问令牌(或令牌的种类),但是当我尝试从它们中验证一个时,我收到"无效请求".在服务器端我使用节点和示例代码看起来像这样:
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);
});
Run Code Online (Sandbox Code Playgroud)
sdk的反应是这样的:
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"
Run Code Online (Sandbox Code Playgroud)
提前致谢.
似乎如果您只是oauth_token为GET请求添加标头,它可以工作:
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
Run Code Online (Sandbox Code Playgroud)
PS但我不确定它是否能继续工作,因为我没有读过的文档
小智 2
从 JS SDK 和服务器端 OAuth 授予的 LinkedIn 身份验证令牌不同。
LinkedIn 开发者网站上记录了一个流程,解释了如何将 JS 令牌交换为 REST API/服务器端令牌: https://developer-programs.linkedin.com/documents/exchange-jsapi-tokens-rest-api -oauth-令牌