-1

我有以下代码。每次我加载此页面时,如果没有 user_id 信息,则需要 3-5 秒。我可以减少时间以使其加载更快吗?

$user_id = $facebook->getUser();
if ($user_id) {
echo "have user";
try {
    $user_profile = $facebook->api('/me','GET');
} catch (FacebookApiException $e) {
    error_log($e);
    $user_id = null;
}
$_SESSION['facebook']= $_SESSION;
$_SESSION['user_profile'] = $user_profile;
} else {
    echo "no user";
    $loginUrl   = $facebook->getLoginUrl(
    array(
      'scope'         => 'publish_stream, user_likes'
    )
    );
    echo "<script type='text/javascript'>top.location.href = '$loginUrl'; </script>";
}

我还有以下代码可以将图像发布到用户相册。在它回显“成功”之前大约需要 4-8 秒。有什么办法让它更快?

//Session start
$user_profile = $_SESSION['user_profile'];
$user_id = $user_profile['id'];

// Do the wall post.
$msg_new = "hello";
$link = "XXXXYYYY";
$facebook->setFileUploadSupport(true);
$imgURL = "user_img/".$user_id.".jpg";
$args = array('message' => $msg_new.$link);
$args['image'] = '@' . realpath($imgURL);

$facebook->api('/me/photos', 'post', $args);
$result = "success";
echo $result;

仅供参考:我正在本地主机上测试这个。

4

1 回答 1

0

仅供参考:我正在本地主机上测试这个。

然后请求可能由于(相对)较慢的互联网连接而延迟,通过与您的机器同时处理的其他请求(音乐流,p2p,...)等竞争。

我不会担心,一旦你把它放在一个“真正的”网络服务器上,看看它的行为,这可能比你的家用机器有更好的连接。如果那里仍然很慢,那么是时候进一步调查此事了。

于 2012-07-07T12:38:49.377 回答