-1

これは私のボタン クリック コードですが、Twitter でステータスが更新されていません。私を助けてください。

protected void btnTwitt_Click(object sender, EventArgs e)
{
    string twitterMsg = txtShout.Text;
    OAuthTokens tokens = new OAuthTokens();
    tokens.AccessToken = "xxxxx";
    tokens.AccessTokenSecret = "yyyy";
    tokens.ConsumerKey = "tttt";
    tokens.ConsumerSecret = "hhhh";
    TwitterResponse<Twitterizer.TwitterStatus> tweetResponse = 
    Twitterizer.TwitterStatus.Update(tokens, twitterMsg);
    lblTwitMsg.Text = "Your have shout successfully on http://twitter.com/" + "";
}
4

4 に答える 4

1

あなたはこのウェブサイトをフォローしていると思いますhttp://www.twitterizer.net/

詳細については、次のリンクをたどってください。まだ試していませんが、実装に関する詳細な情報があります。

http://www.dougv.com/2009/07/01/posting-status-updates-tweets-to-a-twitter-profile-via-asp-net/

http://dotnetguts.blogspot.com/2010/05/tweet-posting-from-aspnet-using-oauth.html

なぜこれを試してみませんか?これは Twitter ウィジェット コードです。これも同じことを行います。一度ログインする必要があります。その後、投稿/共有することができます。

<a href="http://twitter.com/share" class="twitter-share-button"
data-url=""
data-text="testing tweet post" data-count="none" data-via="niranjankala" data-counturl="">
Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js">
</script>

そしてそれは働いています.. ここに画像の説明を入力

この助けを願っています..

于 2011-11-10T09:23:25.407 に答える
0

あなたの代わりに"tttt"あなたを入力する必要がありconsumer key"hhhh"あなたはあなたを挿入する必要がありますsecret key.私はあなたが更新したと思います

これは、私がvbで行ったようにコピーして貼り付けることができるコード全体であり、ここからC#コンバーターで変換できます:C#コンバーター

ここから最初にダウンロードtwitterizer.dllしますhttp://www.twitterizer.net/downloads/ 新しいクラス ファイルを追加します (BasPage.vb) という名前を付けました

Imports Microsoft.VisualBasic
Imports System
Imports System.Collections
Imports System.Collections.Generic
Imports System.Data
Imports System.Diagnostics
Imports Twitterizer

Public Class BasePage
    Inherits System.Web.UI.Page

    Protected Sub DisplayAlert(ByVal msg As String)
        ClientScript.RegisterStartupScript(Me.GetType(), Guid.NewGuid().ToString(), String.Format("alert('{0}');", msg.Replace("'", "\'").Replace(Constants.vbCrLf, "\n")), True)
    End Sub

    Protected Function GetCachedAccessToken() As OAuthTokens
        If Session("AccessToken") IsNot Nothing Then
            Return CType(Session("AccessToken"), OAuthTokens)
        Else
            Return Nothing
        End If
    End Function

    Public Function GetCachedUserId() As ULong
        If Session("GetCachedUserId") IsNot Nothing Then
            Return Convert.ToUInt64(Session("GetCachedUserId"))
        Else
            Return ULong.MinValue
        End If
    End Function

    Protected Sub CreateCachedAccessToken(ByVal requestToken As String)
        Dim ConsumerKey As String = ConfigurationManager.AppSettings("ConsumerKey")
        Dim ConsumerSecret As String = ConfigurationManager.AppSettings("ConsumerSecret")

        Dim responseToken As OAuthTokenResponse = OAuthUtility.GetAccessToken(ConsumerKey, ConsumerSecret, requestToken)

        'Cache the UserId
        Session("GetCachedUserId") = responseToken.UserId

        Dim accessToken As New OAuthTokens()
        accessToken.AccessToken = responseToken.Token
        accessToken.AccessTokenSecret = responseToken.TokenSecret
        accessToken.ConsumerKey = ConsumerKey
        accessToken.ConsumerSecret = ConsumerSecret

        Session("AccessToken") = accessToken
    End Sub

    Protected Function GetTwitterAuthorizationUrl() As String
        Dim ConsumerKey As String = ConfigurationManager.AppSettings("ConsumerKey")
        Dim ConsumerSecret As String = ConfigurationManager.AppSettings("ConsumerSecret")

        Dim reqToken As OAuthTokenResponse = OAuthUtility.GetRequestToken(ConsumerKey, ConsumerSecret)
        Return "https://twitter.com/oauth/authorize?oauth_token=" & reqToken.Token
    End Function
End Class

次にボタンを追加して、次のコードを貼り付けます。

 Protected Sub ibSignInWithTwitter_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles ibSignInWithTwitter.Click
        Response.Redirect(MyBase.GetTwitterAuthorizationUrl())
  End Sub

最後に、web.config ファイルに次を追加する必要があります。

        <add key="ConsumerKey" value="you consumer key"/>
        <add key="ConsumerSecret" value="you consumersecret key"/>
        <add key="Twitterizer2.EnableStatisticsCollection" value="false"/>

問題がある場合はお知らせください。お役に立てば幸いです。

于 2011-11-10T09:30:15.047 に答える
0

コードの何が問題なのかを判断するには、結果のステータスを確認する必要があります。

protected void btnTwitt_Click(object sender, EventArgs e)
{
     string twitterMsg = txtShout.Text;

    OAuthTokens tokens = new OAuthTokens();
    tokens.AccessToken = "xxxxx";
    tokens.AccessTokenSecret = "yyyy";
    tokens.ConsumerKey = "tttt";
    tokens.ConsumerSecret = "hhhh";
    TwitterResponse<Twitterizer.TwitterStatus> tweetResponse = Twitterizer.TwitterStatus.Update(tokens, twitterMsg);
    if (tweetResponse.Result == RequestResult.Success)
    {
        lblTwitMsg.Text = "Your have shout successfully on http://twitter.com/";
    }
    else
    {
        lblTwitMsg.Text = string.format("The tweet could not be posted: {0}", tweetResponse.ErrorMessage);
    }
}

プロパティは、tweetResponse.Result何が起こったのかについてのアイデアも提供します。

さらに質問がある場合は、次のフォーラムで Twitterizer サポート (実際には私です) に連絡してください: http://forums.twitterizer.net/

于 2011-11-10T14:32:00.307 に答える
-1
 try getting oauth token first using this.sorry if it doesnot help ..   

var consumerKey = ConfigurationManager.AppSettings["consumerKey"];
     var consumerSecret = ConfigurationManager.AppSettings["consumerSecret"];
     //Step 1: Get Request Token
      string callbackAddress = "http://xxx.co/folder/Twitter.aspx";
     OAuthTokenResponse RequestToken = OAuthUtility.GetRequestToken(consumerKey, consumerSecret, callbackAddress);
    //  Step 2: Redirect User to Requested Token
            Response.Redirect("http://twitter.com/oauth/authorize?oauth_token=" + RequestToken.Token);
于 2011-11-10T12:48:58.277 に答える