php中apple api的JWT令牌生成

php中apple api的JWT令牌生成,php,jwt,app-store-connect,php-jwt,Php,Jwt,App Store Connect,Php Jwt,我正在尝试用php为apple connect API生成JWT令牌(以获取销售报告) 我尝试了这种格式(使用firebase/php jwt) 收到401,是我遗漏了什么还是格式是我很确定您指定的JWT加密算法是错误的。尝试将其设置为“ES256”,例如: $jwt=jwt::encode($data,$Private\u key,'ES256',$key\u ID) 从“创建JWT标题”下的文档 尝试使用以下代码和算法RS256读取p8文件:$keyfile='AuthKey_XYZ.p8'

我正在尝试用php为apple connect API生成JWT令牌(以获取销售报告)

我尝试了这种格式(使用firebase/php jwt)


收到401,是我遗漏了什么还是格式是

我很确定您指定的JWT加密算法是错误的。尝试将其设置为“ES256”,例如:
$jwt=jwt::encode($data,$Private\u key,'ES256',$key\u ID)

从“创建JWT标题”下的文档

尝试使用以下代码和算法RS256读取p8文件:
$keyfile='AuthKey_XYZ.p8'
$key=openssl\u pkey\u get\u private('file://.$keyfile)还是一样。甚至尝试使用新密钥(管理员)
$Private_key = file_get_contents('AuthKey_XYZ.p8');

$Issuer_ID = 'XYZ';
$Key_ID = 'ZDJ';

$data = [
        'iss' => $Issuer_ID,
        'iat' => \Carbon\Carbon::now()->timestamp,
        'exp' => \Carbon\Carbon::now()->addMinutes(20)->timestamp,
        'aud' => "appstoreconnect-v1"
];

$jwt = JWT::encode($data, $Private_key,'HS256', $Key_ID);