在react-native中使用devise_token_auth获取

rmbxnbpk  于 2023-10-22  发布在  React
关注(0)|答案(1)|浏览(106)

我是react-native的新手。我试图满足devise_token_auth的要求,在每个请求中发送认证头。为了做到这一点,我正在尝试这样的东西:

export const scheduleFetch = (auth) => {
  return (dispatch) => {
    fetch(URL, {
      method: 'GET',
      headers: {
        'Content-Type': 'application/json; charset=utf-8',
        'access-token': auth['acessToken'],
        'token-type': auth['tokenType'],
        'client': auth['client'],
        'uid': auth['uid']
      }
    })
    .then((response) => {
      console.log(response)
      response.json()
    })
    .catch((error) => console.log(error))
  }
}

我的后端正在接收请求,所有标题都已填充。但是,我仍然收到消息"_bodyText":"{\"errors\":[\"You need to sign in or sign up before continuing.\"]}"
我该怎么做?我是不是跳了一步?

nnvyjq4y

nnvyjq4y1#

非常晚的响应,但如果其他人遇到寻找答案,devise_token_auth默认更改每个请求的访问令牌(change_headers_on_each_request= true)。因此,您不仅需要在每个请求中发送auth令牌,还需要在每个响应中保存新的auth令牌。您可以通过在 config/initializers/devise_token_auth.rb 中的初始化器设置中将其设置为false来关闭此功能,在这种情况下,访问令牌不会更改,但会降低安全性。

相关问题