C# ListTweetOnUserTimeline返回null

C# ListTweetOnUserTimeline返回null,c#,twitter,tweetsharp,C#,Twitter,Tweetsharp,我正在使用TweetSharp for C#,我成功地通过它将推文发布到twitter上 然而,我试图从帐户的时间线中读取最新的推文,但每次尝试获取数据时,我都会返回null。下面的代码返回null string consumerKey = <consumerKey>; string consumerSecret = <consumerSecret>; TwitterService service = new TwitterService(consumerK

我正在使用TweetSharp for C#,我成功地通过它将推文发布到twitter上

然而,我试图从帐户的时间线中读取最新的推文,但每次尝试获取数据时,我都会返回null。下面的代码返回null

  string consumerKey = <consumerKey>;
  string consumerSecret = <consumerSecret>;

  TwitterService service = new TwitterService(consumerKey, consumerSecret);
        service.AuthenticateWith(consumerKey, consumerSecret);
        var options = new ListTweetsOnUserTimelineOptions()
        {
            ScreenName = screenName,
            SinceId = 0,
            Count = 5
        };
       var currentTweets = service.ListTweetsOnUserTimeline(options);
string consumerKey=;
字符串consumerSecret=;
TwitterService=新的TwitterService(consumerKey、ConsumerCret);
服务认证(consumerKey、ConsumerCret);
var options=new ListTweetsOnUserTimelineOptions()
{
屏幕名称=屏幕名称,
SinceId=0,
计数=5
};
var currentTweets=service.ListTweetsOnUserTimeline(选项);
我尝试过使用
UserId
而不是
ScreenName
,但结果仍然是
null
。我能找到的所有例子都指向这种方法,但它不起作用


有什么想法吗?

我想你的问题是电话的问题。您似乎再次传递使用者令牌和密码,但仅接受两个参数的AuthenticateWith重载需要用户令牌和密码。我怀疑您因此得到了未经授权的响应(不确定您为什么没有得到错误)

我建议删除AuthenticateWith调用(您已经在构造函数中提供了使用者令牌),或者更改它,以便传递有效用户令牌的详细信息,而不是使用者令牌


您还可以在呼叫完成后检查twitter服务上的响应属性,并检查http状态代码/原因短语/内容等,以查看是否提供了有关出错原因的更多详细信息。

我认为您的问题在于AuthenticateWith呼叫。您似乎再次传递使用者令牌和密码,但仅接受两个参数的AuthenticateWith重载需要用户令牌和密码。我怀疑您因此得到了未经授权的响应(不确定您为什么没有得到错误)

我建议删除AuthenticateWith调用(您已经在构造函数中提供了使用者令牌),或者更改它,以便传递有效用户令牌的详细信息,而不是使用者令牌


您还可以在通话结束后检查twitter服务上的Response属性,并检查http状态代码/原因短语/内容等,以查看是否提供了有关出错原因的更多详细信息。

如果您使用的是较旧版本的.NET,那么您可以在引擎盖下使用TLS 1.1与twitter通信。如果您正在执行此操作,则AuthenticateWith将以静默方式失败,并且任何操作都不起作用

您需要添加代码

ServicePointManager.SecurityProtocol=SecurityProtocolType.Tls12

为了让这一切顺利进行


此外,您应该将accessToken和accessTokenSecret传递给AuthenticateWith,而不是如上所述的使用者密钥。

如果您使用的是较旧版本的.NET,那么您可能会在引擎盖下使用TLS 1.1与Twitter通信。如果您正在执行此操作,则AuthenticateWith将以静默方式失败,并且任何操作都不起作用

您需要添加代码

ServicePointManager.SecurityProtocol=SecurityProtocolType.Tls12

为了让这一切顺利进行

此外,您应该将accessToken和accessTokenSecret传递给AuthenticateWith,而不是如上所述的使用者密钥