dsgtew3241 2015-06-30 18:48
浏览 461
已采纳

如何使用PHP提取已解码的JWT Web令牌的有效内容数据

I have a web token which decodes to the following:

{
 typ: "JWT",
 alg: "HS256"
}.
{
 iat: 1435688301,
 iss: "localhost",
 data: {
  user_id: 2
 }
}.
[signature]

I have this stored in a variable $data, and have no idea how to access the 'iat' value, or the 'user_id'. Can anyone help me out?

I've tried

$issuanceDate = $data['iat'];

But that doesn't seem to be working. I need the user id too, but that is nested in $data.data.

Any help would be much appreciated, thanks.

  • 写回答

1条回答 默认 最新

  • dongshi6844 2015-06-30 19:13
    关注

    I have solved my problem. My solution:

    The decoded token, '$data', returned from php-jwt::decode was an object, I simply cast it to an array using

    $unencodedData = (array) $data;
    

    and accessed the 'iat' field using

    $issuedAt = $unencodedData['iat'];
    

    Also, the object contained a nested object $data->data. To access this I cast the outer '$data' object to an array as above, and accessed the nested 'data' object like this:

    $user_id = $unencodedData['data']->user_id;
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 求学软件的前人们指明方向🥺
  • ¥50 如何增强飞上天的树莓派的热点信号强度,以使得笔记本可以在地面实现远程桌面连接
  • ¥15 MCNP里如何定义多个源?
  • ¥20 双层网络上信息-疾病传播
  • ¥50 paddlepaddle pinn
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services