我只想简单地获取Twitter帐户的3条最新推文:
List<string> tweets = new List<string>();
var twitterCtx = new TwitterContext();
statusTweets =
tweet in twitterCtx.Status
where tweet.Type == StatusType.User &&
tweet.Count == 3 &&
tweet.ID == "shanselman"
select tweet;
foreach (var statusTweet in statusTweets)
{
tweets.Add(statusTweet.Text);
}
但是当我到达foreach
循环的行时,我收到此错误:
远程服务器返回错误:(400)错误请求。
描述:执行当前Web请求期间发生了未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。
异常详细信息:System.Net.WebException:远程服务器返回错误:(400)错误请求。
任何人都知道我做错了什么?
答案 0 :(得分:1)
LINQ to Twitter支持Twitter API v1.1,这需要对每个请求进行OAuth身份验证。我理解错误消息400 Bad Request有点令人困惑,因为401 Unauthorized会让您知道您有授权问题。也许400是因为如果您根本不尝试进行身份验证,则请求未正确构建。无论如何,我确定你的问题是你需要通过OAuth完成授权过程。我在LINQ to Twitter Securing your Application页面上写了一些OAuth文档。
可下载的源代码包含示例,网站上有sample page。
一旦开始使用OAuth,您可能会遇到一些401 Unauthorized错误,并希望查看LINQ to Twitter FAQ。
乔