0

my_appですでに認証されているユーザーのフォロワーにプライベートメッセージを送信しようとしています。コードは次のとおりです。

    var authent = new MvcAuthorizer
        {
            Credentials = new SessionStateCredentials()
            {
                ConsumerKey = this.client.ConsumerKey,
                ConsumerSecret = this.client.ConsumerSecret,
                OAuthToken = identity.Token.Token
            }
        };

        var twitterCtx = new TwitterContext(authent);
        list_friend.ToList().ForEach(x => twitterCtx.NewDirectMessage(x.InvitedFriendID, messageWithPlaceHolders.Replace("[FRIEND_NAME]", x.Name)));

list_friendは、認証されたユーザーのフォロワーのリストです。

Pleaaaase私はあなたの助けが必要です。

4

1 に答える 1

0

解決策は、SessionStateCredentialsではなくInMemoryCrendentialsを使用し、トークンシークレットをcrendentialに追加することです。その後、DateTime.Nowをメッセージに追加する必要があります。これは、Twitterで重複メッセージが許可されていないためです。これは、解決策から外れたコードです。

  var authent = new MvcAuthorizer
        {
            Credentials = new InMemoryCredentials()
            {
                ConsumerKey = this.client.ConsumerKey,
                ConsumerSecret = this.client.ConsumerSecret,
                OAuthToken = identity.Token.Token,
                AccessToken = identity.Token.Secret
            }
        };
  var twitterCtx = new TwitterContext(authent);            
  list_friend.ToList().ForEach(x => twitterCtx.NewDirectMessage(x.SocialId, messageWithPlaceHolders.Replace("[FRIEND_NAME]", x.Name) +DateTime.Now.ToString()));

ありがとう

于 2012-06-18T11:05:43.167 に答える