我正在尝试使用图形api
获取共享计数https://graph.facebook.com/fql?q=";
"SELECT url, total_count,share_count FROM link_stat WHERE url in (";
private void callFB(List validUrlList,Map> dataMap,long timeStamp,Double calibrationFactor){
try {
StringBuilder urlString = new StringBuilder();
System.out.println("List Size " + validUrlList.size());
for (int i = 0; i < (validUrlList.size() - 1); i++) {
urlString.append("\"" + validUrlList.get(i) + "\",");
}
urlString.append("\""
+ validUrlList.get(validUrlList.size() - 1) + "\"");
String out = getConnection(fbURL+URLEncoder.encode(
queryPrefix
+ urlString.toString() + ")", "utf-8"));
dataMap = getSocialPopularity(validUrlList.toArray(), dataMap);
getJSON(out, dataMap, timeStamp,calibrationFactor);
} catch (Exception e) {
e.printStackTrace();
}
}
当我尝试获取公共网址时,此API不需要任何访问令牌
我运行批处理请求,其中每批包含100个url总批次为20.它在服务器上运行。
此API运行良好整整一年,但现在它始终显示我超出API限制的问题。
我从我的本地笔记本电脑运行它工作正常,但是当我从同一台服务器运行它时,它给了我错误。
你可以帮助我突然超过限制,因为过去一年的通话大小是相同的。
问候
Virendra Agarwal
答案 0 :(得分:0)
为您调用API的每个客户端提供了速率限制,您可能已经超过了相同的范围。
必须有速率限制超时。等待那段时间再试一次,这不是一个问题,但它有助于维护来自不同客户端的服务器负载。