2015-04-23 66 views
1

我正在使用Linkedin Oauth 2.0。在这里,我在下面的代码中获取令牌是我想要获取其电子邮件ID将通过的用户的信息。但它给出的错误无法加载资源错误:500。想要在linkedin中使用id获取用户的数据使用rest api

下面是代码:

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 protected]:(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); 
         }); 
        }); 
       } 
      ); 
+0

你不必指定电子邮件和领域的档案数据。使用 网址:https://api.linkedin.com/v1/people/~?format=json – Rifaj

+0

它仍然给出相同的错误。另外,它将如何知道要搜索的内容....如果您有任何这样的网址可以提取数据,请分享。 –

+0

尝试https://apigee.com/console/linkedin - 选择 - 检索基本配置文件数据,身份验证 - OAuth2 – Rifaj

回答

3

你不必指定电子邮件和领域的档案数据。使用

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

,并以 “r_basicprofile” 权限正确的accessToken得到像名字,姓氏,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的访问使用 “与LinkedIn应用”

https://developer.linkedin.com/docs/fields/full-profile

https://developer.linkedin.com/docs/apply-with-linkedin

应用与LinkedIn申请表:

https://help.linkedin.com/app/ask/path/api-dvr

+0

“应用与LinkedIn申请表“感谢我的这样的要求这样的事情。 –

相关问题