1、安装 php-apple-signin 库
composer require griffinledingham/php-apple-signin
需要 php7.2 及以上版本,如果低于该版本,自行修改源码,源码地址
https://github.com/GriffinLedingham/php-apple-signin
2、验证 JWT
public function jwtApple(Request $request) {
// 授权的用户唯一标识
$user = $request->input('user');
// 邮箱
$email = $request->input('email');
// 用户信息
$fullName = $request->input('fullName');
// 授权code 并没有用到
$authorizationCode = $request->input('authorizationCode');
// 授权用户的JWT凭证
$identityToken = $request->input('identityToken');
$appleSignInPayload = ASDecoder::getAppleSignInPayload($identityToken);
$isValid = $appleSignInPayload->verifyUser($user);
// 当 $isValid 为 true 时验证通过,后续逻辑根据需求编写
dd($isValid);
}
其中 iss 和 kid 的获取方式