这是我的代码(App id和App secret都可以):
session_start();
require_once( 'Facebook/FacebookSession.php' );
require_once( 'Facebook/FacebookRedirectLoginHelper.php' );
require_once( 'Facebook/FacebookRequest.php' );
require_once( 'Facebook/FacebookResponse.php' );
require_once( 'Facebook/FacebookSDKException.php' );
require_once( 'Facebook/FacebookRequestException.php' );
require_once( 'Facebook/FacebookAuthorizationException.php' );
require_once( 'Facebook/GraphObject.php' );
require_once( 'Facebook/HttpClients/FacebookCurl.php' );
require_once( 'Facebook/HttpClients/FacebookCurlHttpClient.php' );
require_once( 'Facebook/HttpClients/FacebookHttpable.php' );
use Facebook\FacebookSession;
use Facebook\FacebookRedirectLoginHelper;
use Facebook\FacebookRequest;
use Facebook\FacebookResponse;
use Facebook\FacebookSDKException;
use Facebook\FacebookRequestException;
use Facebook\FacebookAuthorizationException;
use Facebook\GraphObject;
use Facebook\FacebookHttpable;
use Facebook\FacebookCurlHttpClient;
use Facebook\FacebookCurl;
FacebookSession::setDefaultApplication('App_id', 'App_secret');
我得到的错误是:
致命错误:界面'Facebook \ HttpClients \ FacebookHttpable'没有 在发现 /home/superwed/public_html/HS/Facebook/HttpClients/FacebookCurlHttpClient.php 在第33行
这是非常奇怪的,因为我检查过的所有地方都定义好了。
答案 0 :(得分:7)
您需要在Facebook/HttpClients/FacebookHttpable.php
之前需要Facebook/HttpClients/FacebookCurlHttpClient.php
,因为后者取决于前者。
编辑:所以这个Q / A可以对其他人有所帮助,你可能会因放弃require语句并使用Composer autoloader function来保存很多头痛,并且建议在{{{ 3}}。或者,您可以编写自己的自动加载器。