【发布时间】:2014-10-19 21:21:08
【问题描述】:
如何使用游标通过 twitter api 调用进行迭代?我正在尝试使用GET followers/list API 调用获取我的 Twitter 关注者的位置。我已经在我的应用程序中完成了所有与身份验证相关的事情。
这是我到目前为止所做的
var resource_url = "https://api.twitter.com/1.1/followers/list.json";
var cursor = "-1";
var api_path = resource_url;
do {
var url_with_cursor = api_path + "&cursor=" + cursor;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url_with_cursor);
request.Headers.Add("Authorization", authHeader);
request.Method = "GET";
request.ContentType = "application/x-www-form-urlencoded";
WebResponse response = request.GetResponse();
string result = new StreamReader(response.GetResponseStream()).ReadToEnd();
JObject j = JObject.Parse(result);
cursor = j["next_cursor_str"].ToString();
Console.WriteLine(cursor);
}
while ( cursor != "0" );
但是当我运行上面的代码时,我得到一个异常说“远程服务器返回一个错误:(401)未经授权。”在我的代码的以下行中:
WebResponse response = request.GetResponse();
也就是说,响应有问题。
除了developer site 之外,我还没有在任何地方看到关于如何使用游标获取 twitter 数据以导航集合的适当示例。
【问题讨论】:
-
That means there's something wrong with the response.- 是的,这就是异常的含义。那么有什么例外呢? -
哦,很抱歉!我没有放那个!我会编辑帖子。并且异常说“远程服务器返回错误:(401)未经授权”
-
这意味着您没有正确设置 OAuth 令牌。
-
我能够获取前 20 个关注者的数据,而不是其他关注者的数据,因为我必须使用 next_cursor 或 next_cursor_str 访问下一组 20 个关注者。但我不知道把它放在哪里。是在提出请求之前还是之后?
-
你为什么不用你实际使用的代码更新你的问题,或者更好的是stackoverflow.com/help/mcve