FacebookRequest::execute()不包含在facebook sdk中


FacebookRequest::execute() not included in facebook sdk

下载facebook sdk for php后,我尝试运行以下程序。代码是:

    function QueryToRetrieveUserThroughID(string $id) {
        $newFacebookApp = new Facebook'FacebookApp(app-id, app-secret);
        $request = new Facebook'FacebookRequest(
                $newFacebookApp, 'GET', '/' . $id
        );
         $response = $request->execute();
        $graphObject = $request->getGraphObject(); 
   }

虽然到达$response = $request->execute();行时产生:

Fatal error: Uncaught Error: Call to undefined method Facebook'FacebookRequest::execute()

我在这里做了一些错误的想法,如何使用API或确实FacebookRequest::执行不存在??

这实际上是Facebook开发者页面上的一个问题,如问题#509所述,其中页面上的示例代码实际上适用于SDK v4,因此在v5上使用时会产生错误。

最新的文档托管在https://github.com/facebook/php-graph-sdk/blob/5.5/docs/reference.md。

使用SDK v5

// PHP GRAPH SDK 5.5
function QueryToRetrieveUserThroughID(string $id) {
    $newFacebook = new Facebook'Facebook([
        'app_id' => '{app-id}',
        'app_secret' => '{app-secret}',
        'default_graph_version' => 'v2.5',
    ]);
    $newFacebookApp = $newFacebook->getApp();
    $response = $newFacebook->get($id, '{access-token}');
    // or $response = $newFacebook->get($id);
    $graphObject = $response->getGraphObject();
}