发布到Facebook Graph Api很慢

时间:2012-04-04 15:08:21

标签: php facebook facebook-graph-api curl graph

我正在创建一个新的Facebook应用程序并附加了一些操作,例如Spotify上的“收听xxx”。

麻烦的是这个电话需要大约6-7秒,这是相当长的一段时间。我的代码下面是curl_getinfo的结果。这应该是这么慢吗?

    $attachment = array(
        'access_token' => $access_token,
        'album' => 'sergeant peppers',
    );

    $opts = array(
        CURLOPT_CONNECTTIMEOUT => 10,
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_TIMEOUT => 60,
        CURLOPT_USERAGENT => 'facebook-php-3.1',
        CURLOPT_POST => true,
        CURLOPT_POSTFIELDS => $attachment,
        CURLOPT_URL => 'https://graph.facebook.com/me/APPNAME:listening'
    );
    $ch = curl_init();
    curl_setopt_array($ch, $opts);
    $result = curl_exec($ch);
    $info = curl_getinfo($ch);
    curl_close($ch);

curl_getinfo:

的结果
[url] => https://graph.facebook.com/me/APPNAME:listening
[content_type] => text/javascript; charset=UTF-8
[http_code] => 400
[header_size] => 557
[request_size] => 238
[filetime] => -1
[ssl_verify_result] => 0
[redirect_count] => 0
[total_time] => 6.002449
[namelookup_time] => 0.024892
[connect_time] => 0.179322
[pretransfer_time] => 0.77444
[size_upload] => 362
[size_download] => 212
[speed_download] => 35
[speed_upload] => 60
[download_content_length] => 212
[upload_content_length] => 362
[starttransfer_time] => 1.775707
[redirect_time] => 0
[certinfo] => Array
    (
    )

[redirect_url] => 

2 个答案:

答案 0 :(得分:5)

好吧,你得到了一个http 400返回(错误的请求),这表明出了问题。也许如果你的请求正确,请求会更快?

这篇文章:php cURL error in facebook api 表示您应该删除'CURLOPT_POST =>真正' 我还建议添加'CURLOPT_VERIFYPEER =>假的'如果你还有问题。

答案 1 :(得分:0)

不,它不是。 This answer更详细地讨论了Facebook Graph API的预期时间,但其问题诊断不适用于您的问题。

发现瓶颈的最佳选择是网络诊断,例如traceroutedig以及cURL的分析功能(正如您在此处所示)。如果您在不同位置拥有对等方,则还可以尝试从该位置进行分析以查看更改。

祝你好运。这是非常热门的信息,但它应该足以帮助您入门。