2016-08-28 78 views
0

用户我是新来使用gem devise_token_auth和移动客户端API的使用,有两个问题:devise_token_auth如何识别通过令牌

1)我应该如何识别用户?我目前的理解是在一个http请求头文件集access_token是这样吗?

但是从源代码似乎我应该为UID的access_token客户link uid = request.headers['did'] @token = request.headers['access-token'] @client_id = request.headers['client']

2)我能找到一个user.tokens象下面这样:

{"AOYZdDmwI7WQr8I6T4PpPw"=>{"token"=>"$2a$10$C/5f3JV7.9DZG8w.ggdCPelB6kzitWuGK4rfozHv15Hhf/x9DaCcO", "expiry"=>1473485374, "last_token"=>"$2a$10$abctsIP5bHPIm2nMXFTUH.1jPWQ5LiGTTrENjoqihWgcCkwRqbxb6", "updated_at"=>"2016-08-27T13:29:34.948+08:00"}} 

这是client和哪个是访问-token

谢谢!

回答

0

headers = JSON.parse(cookies['authHeaders']) 
 
uid = headers['uid'] 
 
token = headers['access-token'] 
 
client_id = headers['client'] 
 
user = User.find_by_uid(uid) 
 
if !user || !user.valid_token?(token, client_id) 
 
    render json: {error: "Usuario no autorizado."}, status: 401 
 
end