微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么这些推文无法使用 Tweetinvi 发布?

如何解决为什么这些推文无法使用 Tweetinvi 发布?

我正在尝试通过关注 this tutorial 使用 API 和 tweetinvi 库发布推文。

代码运行时,两条推文都没有发布。你能提供任何建议让他们发表吗?

static void Main(string[] args)
{
    Auth.SetUserCredentials("1","2","3","4");
    var user = User.GetAuthenticatedUser();


    Console.WriteLine(user);
    var tweet = Tweet.PublishTweet("Hello from 2D_Racer");
    var tweet2 = Tweet.PublishTweet("Hello World");

    var timeLineTweets = Timeline.GetUserTimeline(user,5);
    foreach (var timeLineTweet in timeLineTweets)
        Console.WriteLine(timeLineTweet);

    Console.ReadLine();
}

解决方法

您链接到的视频使用的是过时的 Tweetinvi 版本。您应该升级到最新的 Tweetinvi 版本。使用上述版本,您可以通过首先为用户配置 TwitterClient 来发布推文,然后发布您的推文。对于时间线部分,您可以使用 GetUserTimelineAsync

string userName = "SomeUsername";
TwitterClient userClient = new TwitterClient("CONSUMER_KEY","CONSUMER_SECRET","ACCESS_TOKEN","ACCESS_TOKEN_SECRET");
var publishedTweetOne = await userClient.Tweets.PublishTweetAsync("Your first Tweets message.");
var publishedTweetTwo = await userClient.Tweets.PublishTweetAsync("Your second Tweets message.");

var timeLine = await userClient.Timelines.GetUserTimelineAsync(userName);

foreach (var tweet in timeLine)
{
    Console.WriteLine(tweet.Text);
}

需要注意的一点是,您需要通过 Twitter 开发人员门户为您的应用程序设置正确的权限。如果您没有适当的权限,您将在尝试发布推文时收到“需要授权”TwitterExceptions(这可能是您遇到的情况,因此验证这是一个好主意)。

app Permissions

此外,如果您必须change your application's permission level,其所有用户令牌都将被撤销,您将需要发布新令牌并适当更新您的代码:

如果更改了权限级别,则必须丢弃已颁发给该 Twitter 应用程序的任何用户令牌,并且用户必须重新授权该应用程序,以便令牌继承更新后的权限。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。