nazmulhasan / laravel-facebook-post
此包允许在Laravel应用程序中创建、更新、删除和获取Facebook页面的帖子
v1.0.2
2024-03-28 14:41 UTC
Requires
- php: ^7.2|^7.4|^8.0|^8.1|^8.2|^8.3
- illuminate/support: ^6.0|^7.0|^8.0|^9.0|^10.0|^11.0
README
此包允许在Laravel应用程序中创建、更新、删除和获取Facebook页面的帖子
需求
- PHP >=7.2
- Laravel >= 6
安装
您可以通过composer安装此包
composer require nazmulhasan/laravel-facebook-post
配置
您可以使用以下命令可选地发布配置文件config/facebook.php
php artisan vendor:publish --provider="NazmulHasan\LaravelFacebookPost\FacebookPostServiceProvider" --tag="config"
配置.env
文件
FACEBOOK_PAGE_ID=
FACEBOOK_ACCESS_TOKEN=
使用方法
获取所有帖子
use NazmulHasan\LaravelFacebookPost\Facades\FacebookPost;
$response = FacebookPost::getPost();
创建文本帖子
use NazmulHasan\LaravelFacebookPost\Facades\FacebookPost;
$message = 'Message from laravel application';
$response = FacebookPost::storePost($message);
创建带有图片的文本帖子
use NazmulHasan\LaravelFacebookPost\Facades\FacebookPost;
$message = 'Message from laravel application'; //message is optional
$url = 'Your image url';
$response = FacebookPost::storePostWithPhoto($url, $message);
更新帖子
use NazmulHasan\LaravelFacebookPost\Facades\FacebookPost;
$message = 'Message from laravel application';
$post_id = 'Your post id';
$response = FacebookPost::updatePost($post_id, $message);
删除帖子
use NazmulHasan\LaravelFacebookPost\Facades\FacebookPost;
$post_id = 'Your post id';
$response = FacebookPost::deletePost($post_id);
成功响应示例
array:4 [
"status" => "success"
"status_code" => 200
"message" => "Post created successfully"
"post_id" => "103408372435470_395802394384938"
]
失败响应示例
array:3 [
"status" => "fail"
"status_code" => 422
"message" => "Message is required"
]
限制
- 您只能更新帖子的文本。图片无法更新。
- 不支持多图上传。
- 不支持视频上传。
如何生成访问令牌?
- 首先创建一个商业类型的Facebook应用。从Facebook开发者面板创建应用
- 转到Facebook Graph Api探索器
- 这里您将看到三个选择选项
- 元应用
- 用户或页面
- 权限
元应用
:在这里您将看到您创建的所有Facebook应用。从下拉列表中选择您的商业类型应用。用户或页面
:在这里您需要选择页面访问令牌。然后它将重定向到您的Facebook页面列表。选择您首选的页面并给予必要的权限。权限
:请从以下权限列表中选择以下权限
pages_show_list
pages_read_engagement
pages_manage_engagement
pages_manage_posts
pages_read_user_content
-
最后点击生成访问令牌按钮,它将生成一个为期一小时的临时访问令牌。
-
如果您想将此令牌作为长期令牌,您需要转到访问令牌调试器。插入访问令牌并点击
调试
按钮。然后它将显示令牌信息。滚动到页面底部,您将看到扩展访问令牌
。点击此按钮,它将生成长期访问令牌。然后复制访问令牌并将其用作FACEBOOK_ACCESS_TOKEN
注意
如果您想生成永不过期的访问令牌,请按照以下步骤操作
- 请打开一个API测试工具,例如Postman,并使用以下URL发送GET请求
https://graph.facebook.com/v19.0/{app-scoped-user-id}/accounts?access_token={long-lived-user-access-token}
。如果您想生成用户访问令牌而不是页面访问令牌,只需从第5步中提到的用户或页面
部分选择用户访问令牌。 - 像页面访问令牌的扩展方法一样扩展此用户访问令牌的过期日期。
- 然后调试此
long-lived-user-access-token
,您将从这个调试信息中获得app-scoped-user-id
。 - 最后,发送GET请求到这个URL
https://graph.facebook.com/v19.0/{app-scoped-user-id}/accounts?access_token={long-lived-user-access-token}
。现在您将从这个请求中获得永不过期的页面访问令牌,并将其用作FACEBOOK_ACCESS_TOKEN
如果您遇到任何问题或错误,请使用此链接创建问题https://github.com/Nazmul7989/laravel-facebook-post/issues。
许可证
本软件遵循MIT许可协议。请参阅许可文件获取更多信息。