В своем приложении я добавил в модель пользователя поле twilio_video_token в виде строки.
Когда наступает момент создания токена, связанного с указанным c пользователем, я делаю это:
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
Затем, позже в моем приложении, у меня есть экземпляр определенного пользователя c.
Итак, я получаю доступ к его токену так: @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 do c как огромный лабиринт! Я в это, но я не могу сказать, где я нахожусь!
Большое спасибо за вашу помощь
Сильвен