Php 从Laravel后端自动在Facebook上共享帖子

Php 从Laravel后端自动在Facebook上共享帖子,php,facebook,facebook-graph-api,laravel-5,Php,Facebook,Facebook Graph Api,Laravel 5,让我告诉你我做了什么 步骤1: "require": { "sammyk/laravel-facebook-sdk": "^3.0" } 步骤2: 'providers' => [ SammyK\LaravelFacebookSdk\LaravelFacebookSdkServiceProvider::class, ]; 'aliases' => [ 'Facebook' => SammyK\LaravelFacebookSdk\Fac

让我告诉你我做了什么

步骤1:

"require": {
    "sammyk/laravel-facebook-sdk": "^3.0"
}
步骤2:

'providers' => [
       SammyK\LaravelFacebookSdk\LaravelFacebookSdkServiceProvider::class,
 ];

 'aliases' => [
      'Facebook' => SammyK\LaravelFacebookSdk\FacebookFacade::class,
 ];
步骤3:

D:\Working_Dir\htdocs\social_test>php artisan vendor:publish
复制的文件 [\vendor\sammyk\laravel facebook sdk\src\config\laravel facebook sdk .php]到[\config\laravel facebook sdk.php]发布完成 标签[]

步骤4:

在config/laravel-facebook-sdk.php中,给出了app\u id、app\u secret、default\u graph\u版本

步骤5:

在控制器
中使用Facebook在顶部。我想从后端到用户墙自动共享帖子。这是我的密码

public function doShare(Request $request) {

    $fb = new Facebook();
    $data = [
        'message' => 'This is a sample sharing',
        'source' => $fb->fileToUpload(asset('photo.jpg')),
    ];

    try {

      $response = $fb->post('/me/photos', $data, '{access-token}');
      var_dump($response);
      exit;
    } catch(Facebook\Exceptions\FacebookResponseException $e) {
      echo 'Graph returned an error: ' . $e->getMessage();
      exit;
    } catch(Facebook\Exceptions\FacebookSDKException $e) {
      echo 'Facebook SDK returned an error: ' . $e->getMessage();
      exit;
    }
        $graphNode = $response->getGraphNode();
        echo 'Photo ID: ' . $graphNode['id'];
}
从我这里得到这个密码。但它总是会出现这种错误

FacebookController.php第21行中的FatalErrorException: 调用未定义的方法SammyK\LaravelFacebookSdk\FacebookFacade::fileToUpload()


任何人给我一个帮助或提示来做这件事。如果我想知道如何获得{access token}

到目前为止运气好吗?这是因为
facebook/graph sdk
sammyk/laravel facebook sdk
是两个不同的作曲家软件包。他们都有自己的类、方法和不同的文档。你已经在developers.facebook.com上创建了应用程序了吗?因为你需要它来用你的应用程序和Facebook执行OAuth2,这样你就可以用用户的数据和行为“做”一些事情。