在我的应用程序中,我在用户模型中添加了一个字段twilio_video_token作为字符串。
当需要创建与特定用户关联的令牌时,我会这样做:
token = Twilio::JWT::AccessToken.new ENV["TWILIO_ACCOUNT_SID"], ENV["TWILIO_API_KEY"], ENV["TWILIO_API_SECRET"], ttl: 3600, identity: @user.name
@user.twilio_video_token = token.to_jwt
@user.save
然后,稍后在我的应用程序中,我有一个特定用户的实例。
所以我像这样访问他的令牌:@user.twilio_video_token
,但它是一个字符串,所以我无法读取存储在令牌中的信息(如identity
或grants
)。
如何将此字符串转换为Twilio::JWT::AccessToken
对象?
我尝试了什么:
使用'jwt' gem
@token = JWT.decode current_user.twilio_video_token, ENV["TWILIO_API_SECRET"], true, { algorithm: 'HS256' }
但这是一团糟......
当我打印@token时,我看到identity
了grants
!
[{"jti"=>"SK****", "grants"=>{"identity"=>"Sylvain"}, "iss"=>"SK****", "nbf"=>1587406278, "exp"=>1587409878, "sub"=>"AC***"}, {"cty"=>"twilio-fpa;v=1", "typ"=>"JWT", "alg"=>"HS256"}]
我不得不承认,我将 Twilio doc 视为一个巨大的迷宫!我喜欢它,但我不知道我在哪里!
非常感谢您的帮助
西尔万