想要使用 rest api 在 linkedin 中使用 id 获取用户数据
Want to fetch data of user using id in linkedin using rest api
我正在使用 Linkedin Oauth 2.0。在这里,我已经在下面的代码中获取了令牌,下一步是我想获取我将传递其电子邮件 ID 的用户的信息。但它给出的错误无法加载资源 error:500.
代码如下:
chrome.identity.launchWebAuthFlow({
"url": " https://www.linkedin.com/uas/oauth2/authorization?&response_type=code&client_id=" + clientid +
"&redirect_uri=" + encodeURIComponent(redirectUri) +
"&state=121212121"
,'interactive': true,
},
function(redirect_url) {
var pairs = redirect_url.split('/');
var values = {};
var code1 = redirect_url.split('?');
var code2 = code1[1].split('&');
var code3 = code2[0].split('=');
var actualCode = code3[1];// actual code obtained in request
var deferred = $q.defer();
var req = {
method: 'POST',
url: 'https://www.linkedin.com/uas/oauth2/accessToken?&grant_type=authorization_code&code=' + actualCode +
'&redirect_uri='+ redirectUri + '&client_id=' + clientid + '&client_secret=' + clientSecretKey,
headers:{
'Access-Control-Expose-Headers': 'X-My-Custom-Header, X-Another-Custom-Header'
}
}
$http(req).then(function(data){
deferred.resolve(data);
console.log("deferred.resolve(data)"+ data.data.access_token ); // gives the token generated
var req2 = {
method: 'GET',
url: 'https://api.linkedin.com/v1/people/email=xxxx@gmail.com:(first-name,last-name)?format=json',
headers :{
'oauth_token': data.data.access_token,
'x-li-format': 'json'
}
}
$http(req2).then(function(data1){
deferred.resolve(data1);
console.log("sndsnd");
console.log("deferred.resolve(data)"+ data1.data );
});
});
}
);
您不必为基本配置文件数据指定电子邮件和字段。使用
url : https://api.linkedin.com/v1/people/~?format=json
以及具有 "r_basicprofile" 权限的正确访问令牌,以获取名字、姓氏、ID、标题和 siteStandardProfileRequest 等基本详细信息。
要检索其他配置文件字段,请使用
url : https://api.linkedin.com/v1/people/~:(id,num-connections,picture-url)?format=json
对于使用 "r_basicprofile" 权限的可用配置文件字段,请检查 https://developer.linkedin.com/docs/fields/basic-profile
要获取用户的完整个人资料详细信息,您的应用需要从 Linkedin 获得访问权限才能使用 "Apply with Linkedin"
https://developer.linkedin.com/docs/fields/full-profile
https://developer.linkedin.com/docs/apply-with-linkedin
使用 Linkedin 申请表申请:
我正在使用 Linkedin Oauth 2.0。在这里,我已经在下面的代码中获取了令牌,下一步是我想获取我将传递其电子邮件 ID 的用户的信息。但它给出的错误无法加载资源 error:500.
代码如下:
chrome.identity.launchWebAuthFlow({
"url": " https://www.linkedin.com/uas/oauth2/authorization?&response_type=code&client_id=" + clientid +
"&redirect_uri=" + encodeURIComponent(redirectUri) +
"&state=121212121"
,'interactive': true,
},
function(redirect_url) {
var pairs = redirect_url.split('/');
var values = {};
var code1 = redirect_url.split('?');
var code2 = code1[1].split('&');
var code3 = code2[0].split('=');
var actualCode = code3[1];// actual code obtained in request
var deferred = $q.defer();
var req = {
method: 'POST',
url: 'https://www.linkedin.com/uas/oauth2/accessToken?&grant_type=authorization_code&code=' + actualCode +
'&redirect_uri='+ redirectUri + '&client_id=' + clientid + '&client_secret=' + clientSecretKey,
headers:{
'Access-Control-Expose-Headers': 'X-My-Custom-Header, X-Another-Custom-Header'
}
}
$http(req).then(function(data){
deferred.resolve(data);
console.log("deferred.resolve(data)"+ data.data.access_token ); // gives the token generated
var req2 = {
method: 'GET',
url: 'https://api.linkedin.com/v1/people/email=xxxx@gmail.com:(first-name,last-name)?format=json',
headers :{
'oauth_token': data.data.access_token,
'x-li-format': 'json'
}
}
$http(req2).then(function(data1){
deferred.resolve(data1);
console.log("sndsnd");
console.log("deferred.resolve(data)"+ data1.data );
});
});
}
);
您不必为基本配置文件数据指定电子邮件和字段。使用
url : https://api.linkedin.com/v1/people/~?format=json
以及具有 "r_basicprofile" 权限的正确访问令牌,以获取名字、姓氏、ID、标题和 siteStandardProfileRequest 等基本详细信息。
要检索其他配置文件字段,请使用
url : https://api.linkedin.com/v1/people/~:(id,num-connections,picture-url)?format=json
对于使用 "r_basicprofile" 权限的可用配置文件字段,请检查 https://developer.linkedin.com/docs/fields/basic-profile
要获取用户的完整个人资料详细信息,您的应用需要从 Linkedin 获得访问权限才能使用 "Apply with Linkedin"
https://developer.linkedin.com/docs/fields/full-profile
https://developer.linkedin.com/docs/apply-with-linkedin
使用 Linkedin 申请表申请: