我正在做请求规格。我们使用devise-jwt进行身份验证,因此我需要将Authorization
标头放在每个需要调用权限的请求中。
我阅读了 Devise JWT 的文档,所以我知道我可以使用
user = fetch_my_user()
headers = { 'Accept' => 'application/json', 'Content-Type' => 'application/json' }
# This will add a valid token for `user` in the `Authorization` header
auth_headers = Devise::JWT::TestHelpers.auth_headers(headers, user)
get '/my/end_point', headers: auth_headers
但是,Devise::JWT::TestHelpers.auth_headers
, 似乎只是合并{"Authorization" => "Bearer JWT-TOKEN"}
到传入的标头哈希中。
为什么我不能直接拥有 hash {"Authorization" => "Bearer JWT-TOKEN"}
,可以吗?
或者我真正的问题是为什么它需要 Warden::JWTAuth::HeaderParser.to_headers 在auth_headers
方法中?那是干什么用的?
Warden::JWTAuth::HeaderParser.to_headers(headers, token)