我很抱歉,如果它很明显,但我找不到答案。我想发布一个状态。我能找到的就是这两行。我无法弄清楚如何登录。我不在乎它是用户/密码还是使用API密钥。
var twitterCtx = new TwitterContext();
var tweet = twitterCtx.UpdateStatus(@"test text");
我这样做是一个控制台应用程序。
答案 0 :(得分:7)
对不起我的英语,但我会尽力帮助你!
首先,您需要创建一种身份验证,一种方式是使用您自己的Twitter用户和密码。
UsernamePasswordAuthorization cxauthentication = new UsernamePasswordAuthorization();
ctxauthenticatin.UserName = userName; // Put in your Twitter Account
ctxauthenticatin.Password = password; // and password
ctxauthenticatin.AllowUIPrompt = false;
ctxauthenticatin.SignOn();
var ctxTwitterContext = new TwitterContext(ctxauthentication);
ctxTwitterContext.UpdateStatus("test text");
还有另外一种方法,你需要在这个页面http://dev.twitter.com中注册一个应用程序,你在这里注册一个名字,一个你的网站的一个aplicattion,然后他们给你一个ConsumerKey,ConsumerSecert和如果你生成访问令牌,那么他们也会给你一个AccessToken和AccessTokenSecret。 Remenber转到设置并选择读取,写入和访问直接消息选项。然后生成AccessToken。在你的代码中你可以这样做:
public partial class _Default : System.Web.UI.Page
{
private WebAuthorizer auth;
private TwitterContext twitterCtx;
protected void Page_Load(object sender, EventArgs e)
{
IOAuthCredentials credentials = new SessionStateCredentials();
if (credentials.ConsumerKey == null || credentials.ConsumerSecret == null)
{
credentials.ConsumerKey = "Here put your ConsumerKey";
credentials.ConsumerSecret = "Here put your ConsumerSecret"
}
auth = new WebAuthorizer
{
Credentials = credentials,
PerformRedirect = authUrl => Response.Redirect(authUrl)
};
if (!Page.IsPostBack)
{
auth.CompleteAuthorization(Request.Url);
}
twitterCtx = new TwitterContext(auth);
}
protected void authorizeTwitterButton_Click(object sender, EventArgs e)
{
auth.BeginAuthorization(Request.Url);
}
protected void SendTweet_Click(object sender,EventArgs e)
{
twitterCtx.UpdateStatus(“我的测试推文”);
}
易于!!好吧它是如何工作的!首先,当您点击按钮authorizeTwitterButton时,您开始为您的Twitter帐户授权,新的窗口将打开,您在Twitter上登录,您授权应用程序,然后Twitter重定向到您的页面,凭据必要的凭据,然后当你clic发送按钮你发布了一条新推文!
还有另一种方法,您不需要使用开始和完整的授权方法。在这里,您直接介绍所有凭证。例如:
var auth = new SingleUserAuthorizer
{
Credentials = new InMemoryCredentials
{
ConsumerKey = "your ConsumerKey",
ConsumerSecret = "Your consumerSecret",
OAuthToken = "your AccessToken",
AccessToken = "your AccessTokenSecret"]
}
};
var ctxTwitterContext = new TwitterContext(auth);
ctxTwitterContext.UpdateStatus("test text");
确定!我希望我的帮助你!有关更多信息,请访问http://linqtotwitter.codeplex.com/中的文档 再见!如果你喜欢我的anwser只需点击一下! jaja