Facebook API无法连接到主机和超时错误

时间:2011-07-17 17:00:47

标签: php facebook api timeout

几天前,我在Facebook上发布了游戏的测试版。 不幸的是,我没有那么幸运,并且在用户第一次使用它的应用程序的第一个最重要的日子里,他们不断得到我的PHP Apache服务器上的错误导致的错误,从Facebook API获得以下错误 -

  1. 无法连接到主机

  2. connect()超时!

  3. 我的服务器运行在我从Joyent为facebook开发者提供的免费服务器上。 我不是网络服务器的大专家,所以我不知道问题是来自我自己还是Facebook方面。 我怎样才能快速解决这个问题呢!

    非常感谢!

    编辑: 出于某种原因,我忘记了代码示例和错误示例 -

    这是针对Facebook的简单查询的示例 -

    $session = $facebook->getSession();
    
    $currentID = $facebook->api('/me?fields=id');
    

    这是错误堆栈跟踪 -

    couldn't connect to host StackTrace: Array
    (
        [0] => Array
            (
                [file] => /users/home/aagnt2sv/web/public/Facebook/facebook-php-sdk-7d538d3/src/facebook.php
                [line] => 523
                [function] => makeRequest
                [class] => Facebook
                [type] => ->
                [args] => Array
                    (
                        [0] => https://graph.facebook.com/me?fields=id
                        [1] => Array
                            (
                                [method] => GET
                                [access_token] => 104269778819|2.AQAKqpIXE0jqFuoU.3600.1311008400.1-785849095|qxtBqmWWRMc_GpM77CK77RbO4YA
                            )
    
                    )
    
            )
    
        [1] => Array
            (
                [file] => /users/home/aagnt2sv/web/public/Facebook/facebook-php-sdk-7d538d3/src/facebook.php
                [line] => 491
                [function] => _oauthRequest
                [class] => Facebook
                [type] => ->
                [args] => Array
                    (
                        [0] => https://graph.facebook.com/me?fields=id
                        [1] => Array
                            (
                                [method] => GET
                            )
    
                    )
    
            )
    
        [2] => Array
            (
                [function] => _graph
                [class] => Facebook
                [type] => ->
                [args] => Array
                    (
                        [0] => /me?fields=id
                    )
    
            )
    
        [3] => Array
            (
                [file] => /users/home/aagnt2sv/web/public/Facebook/facebook-php-sdk-7d538d3/src/facebook.php
                [line] => 444
                [function] => call_user_func_array
                [args] => Array
                    (
                        [0] => Array
                            (
                                [0] => Facebook Object
                                    (
                                        [appId:protected] => *censored*
                                        [apiSecret:protected] => *censored*
                                        [session:protected] => Array
                                            (
                                                [uid] => *censored*
                                                [access_token] => 104269778819|2.AQAKqpIXE0jqFuoU.3600.1311008400.1-785849095|qxtBqmWWRMc_GpM77CK77RbO4YA
                                                [expires] => 1311008400
                                                [sig] => ddf14dcaa953cb64d3f98b0649b60613
                                            )
    
                                        [signedRequest:protected] => 
                                        [sessionLoaded:protected] => 1
                                        [cookieSupport:protected] => 1
                                        [baseDomain:protected] => 
                                    )
    
                                [1] => _graph
                            )
    
                        [1] => Array
                            (
                                [0] => /me?fields=id
                            )
    
                    )
    
            )
    
        [4] => Array
            (
                [file] => /users/home/aagnt2sv/web/public/edamometer/EdamometerWS.php
                [line] => 31
                [function] => api
                [class] => Facebook
                [type] => ->
                [args] => Array
                    (
                        [0] => /me?fields=id
                    )
    
            )
    

    再次感谢!

3 个答案:

答案 0 :(得分:0)

使用

获取用户ID
$fb = new Facebook(array(

    'appId'  => 'your_app_id',
    'secret' => 'your_app_secret',

));

$user = $fb->getUser();// returns user id

答案 1 :(得分:0)

几天之后,它以某种方式自行修复。也许这是我服务器或Facebook服务器上的临时问题。

答案 2 :(得分:0)

我目前在我的服务器上遇到此问题(使用PHP访问Facebook API)。根据错误消息的性质,显然问题是我的服务器(在亚马逊云上运行,顺便说一句)和Facebook的服务器之间的连接。

然而,抛出一个循环的是,有些命令正常工作。也就是说,尝试使用一个Facebook令牌登录正常,而另一个则导致此错误消息。

我能想到的唯一合理解释是Facebook服务器正在经历某种临时打嗝......但即使这样做也很难解释问题,因为它在某种程度上与正在处理的令牌有关。用过的。唯一有道理的方法是,如果Facebook的服务器在处理我给他们的特定令牌时出现了某种错误......