我正在使用 Bit.ly API(实际上更像是在玩),并不断收到此问题标题中的错误。因此,我将向您展示代码,并希望有人可以帮助我解决此问题。首先是客户端代码。
var x = service.GetClicks(url, service.BitlyLogin, service.BitlyAPIKey);
Console.WriteLine(x);
Console.ReadLine();
这是被调用的代码
public List<int> GetClicks(string url, string login, string key)
{
List<int> clicks = new List<int>();
url = Uri.EscapeUriString(url);
string reqUri =
String.Format("http://api.bit.ly/v3/clicks?" +
"login={0}&apiKey={1}&shortUrl={2}&format=xml" +
login, key, url);
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(reqUri);
req.Timeout = 10000; // 10 seconds
Stream stm = req.GetResponse().GetResponseStream();
XmlDocument doc = new XmlDocument();
doc.Load(stm);
// error checking for xml
if (doc["response"]["status_code"].InnerText != "200")
throw new WebException(doc["response"]["status_txt"].InnerText);
XmlElement el = doc["response"]["data"]["clicks"];
clicks.Add(int.Parse(el["global_clicks"].InnerText));
clicks.Add(int.Parse(el["user_clicks"].InnerText));
return clicks;
}
正如您所看到的,它是非常简单的代码,没有什么复杂的,而且我看不到任何导致此错误的东西。任何使用过Bit.ly API的人(完整的错误是索引(从零开始)必须大于或等于零并且小于参数列表的大小。)Bit.ly API并且可以伸出援手吗?