blackit / privyid
此包的最新版本(v1.2.0)没有可用的许可证信息。
Privy ID 集成于 Laravel
v1.2.0
2020-02-03 01:55 UTC
Requires
- guzzlehttp/guzzle: ^6.3@dev
README
用于集成 PrivyID 至 Laravel 应用的包
安装
使用 composer 安装
composer require blackit/privyid
设置
发布迁移和配置
使用以下命令发布应用
php artisan vendor:publish --provider="BlackIT\PrivyID\PrivyIDServiceProvider"
php artisan migrate
设置环境变量
设置你的环境变量
PRIVYID_PRODUCTION=false PRIVYID_USER=username PRIVYID_PASSWORD=password PRIVYID_MERCHANT_KEY=merchankey PRIVYID_SANDBOX_USER=usernamesandbox PRIVYID_SANDBOX_PASSWORD=passwordsandbox PRIVYID_SANDBOX_MERCHANT_KEY=merchantsandbox PRIVYID_SANDBOX_OWNER=ownercode PRIVYID_SANDBOX_OWNER_ENTERPRISE_TOKEN=enterprisetoken PRIVYID_CLIENT_ID=clientid PRIVYID_SECRET_KEY=secretkey PRIVYID_OWNER=ownercode PRIVYID_OWNER_ENTERPRISE_TOKEN=enterprisetoken
清除配置缓存
php artisan config:clear
设置 config/app.php
return [ ... 'providers' => [ ... \BlackIT\PrivyID\PrivyIDServiceProvider::class ], ... 'aliases' => [ ... 'File' => Illuminate\Support\Facades\File::class, 'PrivyID' => \BlackIT\PrivyID\PrivyIDFacade::class, ], ];
用法
在模型中(例如 User)使用 PrivyIDAble
namespace App; use BlackIT\PrivyID\PrivyIDAble; class User { use PrivyIDAble; ... }
添加绑定按钮
<a href="{{ PrivyID::getOAuthLink() }}">Bind Digital Signature</a>
设置回调
namespace App\Http\Controllers; use App\User; use BlackIT\PrivyID\PrivyID; use Illuminate\Http\Request; class DigitalSignatureController extends Controller { public function privyid(Request $request) { $code = $request->input('code'); if ($code != '') { /** * @var $user User */ $user = \Auth::user(); try { $user->bind($code); } catch (\Exception $e) { \Toast::error('Gagal integrasi dengan Privy ID silahkan klik tombol bind kembali'); } } } }
获取身份和更新身份
public function getIdentity(Request $request) { $user = Auth::user(); $user->updateIdentity(); $identity = $user->privyid(); ... }
上传文档
public function uploadDocument(Request $request) { $user = Auth::user(); ... $recipientBuilder = new PrivyIDRecipientBuilder(); $recipientBuilder->addRecipient('PRIVYID', 'Signer'); $checkUploadPrivy = $user->uploadDocument('CODE Document', 'Title Document', 'Parallel/Serial', 'File Location', $recipientBuilder->output()); }