在我的一个PHP网站上,我使用以下代码获取每个网站子页面的Facebook份额:
$json_string = file_get_contents('http://graph.facebook.com/?id=' . $url);
$json = json_decode($json_string, true);
if(isset($json['share']['share_count'])){
return intval( $json['share']['share_count'] );
} else {
return 0;
}
这个代码在没有那么多人参加的网站上运行良好。 但是当我在一个经常访问的网站上使用该代码时,它会给我零份数并且警告:
警告:警告(2):file_get_contents(http://graph.facebook.com/?id=..。):无法打开流:HTTP请求失败! HTTP / 1.1 403禁止
我猜我可能会向http://graph.facebook.com/?id=网址发出很多请求。我的问题是如何解决这个问题?我需要为每个子页面更新不小于10-15分钟间隔的份额。其中有2000多个。访问整个网站的用户数量巨大。
答案 0 :(得分:0)
你真的不应该为每一个页面点击调用api,这肯定会达到速率限制。你应该做两件事:
如果这不起作用,则需要减少API调用量。