Twitter 사용자가 내 Twitter ID를 사용하여 내 사이트에 로그인 할 수 있도록 Twitter에 OAuth를 구현하려고합니다. 이를 위해 TweetSharp 라이브러리를 사용하고 있습니다. 예제에 따라 나는 다음과 같은 코드를 작성했다.TweetSharp에서 Twitter OAuth를 사용할 때 사용자가 로그인 할 때마다 내 앱을 승인하라는 메시지가 계속 나타납니다.
public ActionResult Login(string oauth_token, string oauth_verifier)
{
var service = new TwitterService(consumerKey, consumerSecret);
if (oauth_token == null)
{
var requestToken = service.GetRequestToken(Request.Url.ToString());
var uri = service.GetAuthorizationUri(requestToken);
return new RedirectResult(uri.ToString(), false);
}
else
{
var requestToken = new OAuthRequestToken { Token = oauth_token };
OAuthAccessToken accessToken = service.GetAccessToken(requestToken, oauth_verifier);
service.AuthenticateWith(accessToken.Token, accessToken.TokenSecret);
TwitterUser user = service.VerifyCredentials(new VerifyCredentialsOptions());
TempData["response"] = string.Format("Your username is {0}", user.ScreenName);
return RedirectToAction("Success");
}
}
public ActionResult Success()
{
ViewBag.Response = TempData["response"];
return View();
}
그러나 문제가 있습니다. 사용자가 시스템에 로그인 할 때마다 트위터는 전에도 그것을 했음에도 불구하고 응용 프로그램을 인증하도록 요청합니다. 이 문제를 방지 할 수있는 방법이 있습니까? 페이스 북과 구글로 OAuth를 구현했기 때문에 시스템에 로그인 할 때마다 애플리케이션을 인증 할 필요가 없다.