Я реализовал это с помощью Twitterizer в ASP.NET MVC.
Во-первых, у вас должно быть действие «Вход в систему», которое принимает имя пользователя и пароль на контроллере, который авторизует пользователя и сохраняет токены:
[HttpPost]
public ActionResult Login(string username, string password) {
OAuthTokenResponse tokens;
var consumerKey = ConfigurationManager.AppSettings["TwitterConsumerKey"];
var consumerSecretKey = ConfigurationManager.AppSettings["TwitterConsumerSecret"];
try {
tokens = XAuthUtility.GetAccessTokens(consumerKey, consumerSecretKey, username, password);
Session["AccessToken"] = tokens.Token;
Session["AccessTokenSecret"] = tokens.TokenSecret;
}
catch (ArgumentNullException) {
ViewData["message"] = "Username or password incorrect";
return View();
}
ViewData["message"] = "You are logged in to twitter as " + tokens.ScreenName;
return View();
}
Затем у вас есть действие PostMessage, которое переносит содержимое сообщения и сообщения в твиттер:
[HttpPost]
public ActionResult PostMessage(string message ) {
// you should check to make sure the user is actually logged in by checking the session vars first
var tokens = new OAuthTokens
{
AccessToken = Session["AccessToken"],
AccessTokenSecret = Session["AccessTokenSecret"],
ConsumerKey = consumerKey,
ConsumerSecret = consumerSecretKey
};
var tweetResponse = TwitterStatus.Update(tokens, data.Message);
if (tweetResponse.Result == RequestResult.Success) {
ViewData["message"] = "Message posted!";
} else {
ViewData["message"] = "Error posting to twitter.";
}
return View();
}
Этот код не был проверен, и следует добавить дополнительную проверку ошибок, но он должен помочь вам начать ...