我對LinkedIn API的使用很困難,我確信我做錯了什麼,但我無法弄清楚什麼。我有一個ASP.NET MVC 4應用程序和AuthConfig.cs裏面我有:使用ASP.NET MVC和OAuthWebSecurity檢索LinkedIn用戶配置文件時出錯
OAuthWebSecurity.RegisterLinkedInClient(「apikey」,「secretkey」);
使用默認的AccountController我能夠對LinkedIn API進行身份驗證。在ExternalLoginCallback方法中,我將accessToken存儲在會話變量中。但是,在此之後,我無法使用此accessToken獲取有關用戶個人資料的信息。我總是得到一個401(無效的訪問令牌)。這是我在我的測試方法之一:
(HttpWebRequest的)WebRequest.Create(的String.Format( 「https://api.linkedin.com/v1/people/~?oauth2_access_token= {0}」 的accessToken)
任何人都可以指出我錯過了什麼
?謝謝!
你說得對。經過更多的調查,我終於搞清楚了,但謝謝!我實現了我自己的LinkedInClient,這不是一件困難的事情。基本上,我所做的只是創建一個從OAuth2Client繼承的新類,然後我重寫了VerifyAuthentication,GetServiceLoginUrl,GetUserData和QueryAccessToken方法。 你可以從FacebookClient獲得一些想法(http://bit.ly/1oyrKoL) – nepomucenobr
順便說一句,這可能有所幫助: 在GetUserData上,使用類似https://api.linkedin.com/v1/people/~ :(ID,第一姓,名,標題,公衆矚目的URL)oauth2_access_token =?。 在GetServiceLoginUrl上,使用https://www.linkedin.com/uas/oauth2/authorization作爲基礎URL並追加以下查詢字符串參數:response_type(始終爲「code」),client_id,scope,state和redirect_uri。 在QueryAccessToken上,使用https://api.linkedin.com/uas/oauth2/accessToken並傳遞這些參數:grant_type(總是「authorization_code」),代碼,client_id,client_secret和rediret_uri。 –
nepomucenobr