1


    try {
        $return = $facebook->api("/" . $userFromDB["username"] . "/feed",
            "post", array(
                message => "",
                picture => "http://blabla.net/blabla1/img/autopost/" . $blabla2 . ".png",
                link => "http://apps.facebook.com/blabla1/?var2=" . $encryptedUserIds[$userFromDB["id"]], //$appPageURL
                caption => "Tikla, begen.",
                description => $var3,
                access_token => $auth["auth_code"],
            ));
        $usersPosted++;
    } catch (FacebookApiException $e) {
        $userProcessError++;
        write_log("blabla");
    }

您好,这是我将帖子发送到用户墙的代码部分。如果没有异常,代码将完美运行。每当发生异常时,我都会收到这个烦人的致命错误。

我尝试了很多事情来纠正,但脚本与我在代码的其他部分调用 facebook api 的地方相同。

我搜索了谷歌和stackoverflow。似乎没有人有这个错误。我是唯一一个?提前致谢。

这是错误:

Fatal error:  Call to undefined method Facebook::throwAPIException() in facebook-php-sdk/src/base_facebook.php on line 870

我使用的 Facebook sdk 版本:3.2 Php 版本:5.3

编辑:这就是我为用户获取 access_token 的方式。我将它存储到数据库中:

 

    if(isset($code) && $state==$authState){
        $accessTokenInformation=file_get_contents($accessTokenURL . $code);
        $tmpResult=explode("&", $accessTokenInformation);

        if(sizeof($tmpResult)==2){
            $tmpAT=explode("=", $tmpResult[0]);
            $tmpExp=explode("=", $tmpResult[1]);

            if(sizeof($tmpAT)==2 && sizeof($tmpExp)==2){
                $tmpDBUserAuth=check_db_for_authcode_for_user(...);
                if(empty($tmpDBUserAuth)){
                    insert_authcode_indb(...);
                    write_log(...);
                }else{
                    update_authcode_indb(...)
                    write_log(...);
                }

            }else{
                write_log(...);
                echo(' top.location.href="'. $OAuthURL .'"; ');
            }
        }else{
            write_log(...);
            echo(' top.location.href="'. $OAuthURL .'"; ');
        }
    }

2012/11/06 编辑:问题仍然存在。请帮忙。

4

2 回答 2

0

请检查您的 FB API 密钥是否设置正确......我也遇到了这个问题,但是在它运行完美之后我已经更正了密钥。

尝试使用以下脚本

http://www.9lessons.info/2011/09/update-login-with-facebook-and-twitter.html

于 2012-10-21T09:33:55.257 回答
0

致命错误:在第 870 行的 facebook-php-sdk/src/base_facebook.php 中调用未定义的方法 Facebook::throwAPIException()

该错误消息没有意义。

如果我在我的 IDE 中转到该文件的第 870 行,并按照方法名称对其声明进行操作,则它位于第 1237 行的同一文件中(全部用于当前版本 3.2.0)。

因此,没有合理的理由导致未定义的方法错误。

您能否检查一下 SDK 文件是否已正确上传到您的服务器,或者只是重新下载并重新上传它们,以确保它不是损坏/截断文件内容的问题?

于 2012-10-22T07:59:26.400 回答