2017-07-02 88 views
0

我使用devise-jwtRails的设计,智威汤逊,如何

自述配置devise.rb添加dispatch_requests有以下几点:

dispatch_requests:

“凡JWT令牌应派出更多的要求”

例子:

jwt.dispatch_requests = [ 
          ['POST', %r{^/dispatch_path_1$}], 
          ['GET', %r{^/dispatch_path_2$}], 
         ] 

基础上的文档,我更新了我的devise.rb有以下几点:

config.jwt do |jwt| 
    jwt.secret = ENV['DEVISE_JWT_SECRET_KEY'] 
    jwt.expiration_time = 30.days 
    jwt.dispatch_requests = [ 
           ['GET', %r{^/users/confirmation.*$}] 
          ] 
    end 

随着越来越设计,智威汤逊派遣JWT令牌当用户通过点击下面的链接通过电子邮件确认他们的电子邮件地址的目标:

http://localhost:4400/users/confirmation?confirmation_token=16J2zDtDhjyF3vCQv2ba 

出于某种原因,上面的网址是不是得到的JWT令牌调度在头...鉴于我在正则表达式可怕,我希望有一些帮助...我做错了什么添加额外的调度请求在我的设计配置?

谢谢!

回答

0

如果令牌位于链接中,您可以点击该标记,标记将不会出现在标题中,它将作为名为'confirmation_token'的参数发送。您可以从控制器中访问: params[:confirmation_token]

p.s. JSON Web令牌非常棒,我喜欢用它们来管理应用程序中的状态,因此不需要会话存储:D,当然,当您需要在前端的令牌中访问数据时,这当然会带来一些小问题。