从.NET应用程序发布"Hello World"到twitter

Phi*_*enn 10 c# twitter

我的客户希望我使用.NET发布到Twitter,并建议我使用C#.

问:如何使用C#将"Hello World"发布到Twitter?

这篇文章提到了一个名为twitterizer的图书馆.没有使用第三方库,是不是有本地方法呢?(也许不是因为身份验证是其中一项要求).

Ach*_*les 16

只需将此实现的包装器用于Twitter API:

https://github.com/danielcrenna/tweetsharp

    var twitter = FluentTwitter.CreateRequest()   
    .AuthenticateAs("USERNAME", "PASSWORD")   
    .Statuses().Update("Hello World!")   
    .AsJson();   

    var response = twitter.Request();  
Run Code Online (Sandbox Code Playgroud)

来自:http://code-inside.de/blog-in/2009/04/23/howto-tweet-with-c/

甚至还有一个DotNetRocks采访开发人员.


Mar*_*gan 6

我创建了一个视频教程,详细说明如何在twitter中设置应用程序,使用nuget安装API库,接受用户的访问令牌并代表该用户发布:

视频:http: //www.youtube.com/watch?v = TGEA1sgMMqU

教程:http://www.markhagan.me/Samples/Grant-Access-And-Tw​​eet-As-Twitter-User-ASPNet

如果您不想离开此页面:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

using Twitterizer;

namespace PostFansTwitter
{
    public partial class twconnect : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            var oauth_consumer_key = "gjxG99ZA5jmJoB3FeXWJZA";
            var oauth_consumer_secret = "rsAAtEhVRrXUTNcwEecXqPyDHaOR4KjOuMkpb8g";

            if (Request["oauth_token"] == null)
            {
                OAuthTokenResponse reqToken = OAuthUtility.GetRequestToken(
                    oauth_consumer_key,
                    oauth_consumer_secret,
                    Request.Url.AbsoluteUri);

                Response.Redirect(string.Format("http://twitter.com/oauth/authorize?oauth_token={0}",
                    reqToken.Token));
            }
            else
            {
                string requestToken = Request["oauth_token"].ToString();
                string pin = Request["oauth_verifier"].ToString();

                var tokens = OAuthUtility.GetAccessToken(
                    oauth_consumer_key,
                    oauth_consumer_secret,
                    requestToken,
                    pin);

                OAuthTokens accesstoken = new OAuthTokens()
                {
                    AccessToken = tokens.Token,
                    AccessTokenSecret = tokens.TokenSecret,
                    ConsumerKey = oauth_consumer_key,
                    ConsumerSecret = oauth_consumer_secret
                };

                TwitterResponse<TwitterStatus> response = TwitterStatus.Update(
                    accesstoken,
                    "Testing!! It works (hopefully).");

                if (response.Result == RequestResult.Success)
                {
                    Response.Write("we did it!");
                }
                else
                {
                    Response.Write("it's all bad.");
                }
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)


Ati*_*ziz 5

是的,你可以在没有任何第三方库的情况下完成.请参阅我在IronPython Cookbook网站上发布的IronPython示例,该示例向您展示了具体方法.即使你没有在IronPython中编程,下面重复了应该让你入门的代码的主要部分,并且很容易移植到C#:

ServicePointManager.Expect100Continue = False 
wc = WebClient(Credentials = NetworkCredential(username, password))
wc.Headers.Add('X-Twitter-Client', 'Pweeter')
form = NameValueCollection()
form.Add('status', status)
wc.UploadValues('http://twitter.com/statuses/update.xml', form)
Run Code Online (Sandbox Code Playgroud)

基本上,这会对http://twitter.com/statuses/update.xml执行HTTP POST,并调用一个HTML FORM字段status,其中包含由username(和password)标识的帐户的状态更新文本.

  • 今天工作正常,但下个月Twitter关闭基本身份验证时将停止工作. (5认同)