我写了一个 PHP脚本自制,以便从页面获取最后的 FB帖子,这只是从 jQuery / AJAX执行我的文档准备就绪时的strong>代码:
$("my_object").load("fb_feed.php");
在本地 PHP服务器上以在VPS 上运行到Time To First Byte非常长:至少 10s , 20s 平均或更多
ini_set("allow_url_fopen", 1);
function getGraphUrl($param){
return "https://graph.facebook.com/". $param ."access_token=THE_TOKEN";
}
function getContent($param){
$url = getGraphUrl($param);
return json_decode(file_get_contents($url));
}
$feed = getContent("ID_OF_THE_PAGE/feed?");
$posts = array();
foreach ($feed->data as $i => $post) {
if(isset($post->message)){
$object_id = getContent($post->id . "?fields=object_id&")->object_id;
if(isset($object_id)){
$img_url = "https://graph.facebook.com/" . $object_id . "/picture";
$short = (getimagesize($img_url)[1] < 170 ? true : false);
if($short){
$img_url = "images/empty.png";
}
array_push($posts, array('id' => $post->id,'message' => $post->message,
'img_url' => $img_url, 'date' => $post->created_time));
}
}
if(count($posts) == 6){
break;
}
}
加载帖子的PHP脚本的摘录
一切正常,唯一的问题是装载时间非常长
有没有办法加载更快,而不是建立自己的缓存? 我的要求很差吗?