tayokin/laravel-facebook-accountkit

Laravel Facebook Account Kit SDK (PHP)

v1.0.3 2018-04-08 11:49 UTC

This package is not auto-updated.

Last update: 2024-09-23 16:36:33 UTC


README

License

一个简单的包,使用Facebook的Account Kit,在Laravel中实现无密码登录。

要求

php 7.1+

Composer

Laravel 5.x

安装

要在Laravel项目中使用此包,请通过 Composer 安装

$ composer require tayokin/laravel-facebook-accountkit

将包注册到 服务提供者,在 config/app.php 文件中

'providers' => [
    ...
    Tayokin\FacebookAccountKit\FacebookAccountKitServiceProvider::class,
],

'aliases' => [
    ...
    'AccountKit' => Tayokin\FacebookAccountKit\Facades\FacebookAccountKitFacade::class,
],

您可以使用此包中提供的某些资源来加速您的实现:运行

$ php artisan vendor:publish

使用

按照以下指南在Facebook上创建您的应用:这里

您可以在此处查看示例:这里

使用Facebook的凭证更新 .env 文件

ACCOUNTKIT_APP_ID=XXXXXXXXXXXX
ACCOUNTKIT_APP_SECRET=XXXXXXXXXXXXXXXXXXXXXXXX
ACCOUNTKIT_REDIRECT_URL=<path/to/endpoint>

routes/web.php 中定义您的路由。例如

Route::get('/<path/to/endpoint>', 'FacebookAccountKitController@endpoint');

在您的控制器中导入此包并使用它。例如

use Tayokin\FacebookAccountKit\Facades\FacebookAccountKitFacade;
use Illuminate\Http\Request;

class FacebookAccountKitController extends Controller
{
    ...
    public function endpoint(Request $request)
    {
        $accountData = FacebookAccountKitFacade::getAccountDataByCode($request->get('code'));
        ...
    }
}

上述代码返回一个类似于以下格式的数组

[▼
  "id" => "1802782826673865"
  "phoneNumber" => "+38093XXXXXXX",
  "email" => ""
]

视图

确保您的表单有 csrf_token,例如

<input type="hidden" name="state" value="{{ csrf_token() }}" />

您也可以指定 country,例如

<input type="hidden" name="country_code" value="UA">

测试

$ vendor/bin/phpunit test

致谢

此包由 Tayokin Max 维护。

更新日志

请查看 CHANGELOG 文件以获取最近更改的信息。

许可证

此包根据MIT许可证发布。有关详细信息,请参阅打包的 LICENSE 文件。