Twitter 状态 ID

标签 twitter linq-to-twitter

我正在使用Linq2Twitter在我的 ASP.net Web 窗体应用程序中返回最近的用户推文

var tweets = await
   (from tweet in ctx.Status
      where (
         (tweet.Type == StatusType.User)
         && (tweet.ScreenName == screenName)
         && (tweet.ExcludeReplies == true)
         && (tweet.IncludeMyRetweet == false)
         && (tweet.Count == 10)
         && (tweet.RetweetCount < 1)
      )
      select tweet)
   .Take(count)
   .ToListAsync();

这似乎运行良好,我得到了预期的 Json 返回,但是......

当我尝试构建原始推文的链接时......

“https://twitter.com/” + ScreenName + “/status/” + data.StatusId

我收到“抱歉,页面不存在错误”。

经调查,返回的 StatusId 似乎不正确。例如返回的StatusId为:

500244784682774500

当实际推文指的是:

500244784682774528

换句话说,在本例中,StatusId 似乎漂移了 28。

任何人都可以阐明正在发生的事情/我做错了什么吗?

谢谢。

最佳答案

经过一些调试,我发现返回到 LinqtoTwitter 应用程序的 ID 是正确的,问题要么出现在 JSON 转换器中,要么出现在 JavaScript 本身无法处理无符号整数 ID 值中。

解决方案是根据返回的结果创建一个简单的 View 模型(使用针对 LinqToTwitter.Status 对象的扩展方法)并将其传递给客户端而不是整个数据图。

关于Twitter 状态 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25330792/

相关文章:

python-3.x - 收集推文时如何修复 KeyError 'statuses'?

php - 将 Twitter 的日期格式转换为日期时间

html - 试图为 hmac-sha1 找到一个好的 javascript 函数

c# - 如何获取推文的详细信息?

asp.net-mvc-4 - LinqToTwitter 身份验证 MVC 4 示例

hadoop - 无法通过水槽从推特下载数据

iphone - 在 iPhone 应用程序中使用 Twitter API

c# - 在 ServiceStack api 中使用 Linq2Twitter 和缓存的 OAuth token

c# - Linq to Twitter - token 无效/过期