2009-08-25 2 views
8

Используя oAuth, я могу успешно войти в систему и отправить ее обратно в мое приложение asp.net.Получить Twitter Имя пользователя после oauth Аутентификация

как я могу получить имя пользователя, прошедшего проверку подлинности. На данный момент у меня есть аутентифицированный аут.

ответ

8

verify_credentials API request будет возвращать информацию о текущем пользователе.

Кроме того, ответ Twitter на запрос доступа к токену OAuth (т. Е. Последняя часть процедуры входа в систему OAuth) отвечает именем пользователя и идентификатором пользователя Twitter вместе с обычным токеном и секретным ключом.

+1

Как захватить эти те? – fixmycode

1

Использование библиотеки Twitterizer, вот фрагмент кода.

OAuthTokenResponse reqToken = OAuthUtility.GetAccessToken(ConsumerKey, ConsumerSecret, requestToken); 

long UserID = reqToken.UserId; 

string ScreenName = reqToken.ScreenName; 

Я разместил образец кода в своем блоге. http://www.fairnet.com/post/2010/09/05/Twitter-authentication-using-OAuth.aspx

+0

Получаем ли мы только данные UserID и ScreenName только из твиттера? Также ваш блог не получает. Получение ошибки, что ресурс не найден. – NCA

2

Вот код, который использует аутентификацию oauth 1.0.

Login with twitter using oauth authentication in asp.net and get access token, screen name and userid.

OAuthHelper oauthhelper = new OAuthHelper(); 
    string requestToken = oauthhelper.GetRequestToken(); 

    if (string.IsNullOrEmpty(oauthhelper.oauth_error)) 
     Response.Redirect(oauthhelper.GetAuthorizeUrl(requestToken)); 
    else 
      Response.Write(oauthhelper.oauth_error); 

возвратного URL.

if (Request.QueryString["oauth_token"] != null && Request.QueryString["oauth_verifier"]!=null) 
    { 
     string oauth_token = Request.QueryString["oauth_token"]; 
     string oauth_verifier = Request.QueryString["oauth_verifier"]; 

     OAuthHelper oauthhelper = new OAuthHelper(); 
     oauthhelper.GetUserTwAccessToken(oauth_token, oauth_verifier); 

     if (string.IsNullOrEmpty(oauthhelper.oauth_error)) 
     { 
      Session["twtoken"] = oauthhelper.oauth_access_token; 
      Session["twsecret"] = oauthhelper.oauth_access_token_secret; 
      Session["twuserid"] = oauthhelper.user_id; 
      Session["twname"] = oauthhelper.screen_name; 


      Response.Write("<b>AccessToken=</b>" + oauthhelper.oauth_access_token); 
      Response.Write("<br /><b>Access Secret=</b>" + oauthhelper.oauth_access_token_secret); 
      Response.Write("<br /><b>Screen Name=</b>" + oauthhelper.screen_name); 
      Response.Write("<br /><b>Twitter User ID=</b>" + oauthhelper.user_id); 
     } 
     else 
      Response.Write(oauthhelper.oauth_error); 
    } 

Получить oAuthHelper и oAuthUttilityКлассы и понять, как это работает Login with twitter using oauth authentication in asp.net and get access token, screen name and userid.

+0

Хорошо. o мы получаем только эти данные UserID и ScreenName только из твиттера. Как мы можем получить другие конфиденциальные данные в виде номера телефона, изображения и т. Д. – NCA

Смежные вопросы