使用 React 和 Authorization header 获取请求时出错

问题描述 投票:0回答:1

我已经寻找解决方案好几天了,但还没有找到任何东西。

我有一个来自 localstorage 的 jwt 令牌,我需要通过 api 调用进行验证。 问题是我的 api 的响应始终是“无效令牌”。 仅当我的 React 应用程序执行提取时才会发生这种情况,因为如果我复制粘贴请求而不更改控制台中的任何内容,则调用将被验证而不会出现问题。

我的代码不起作用

const token = localStorage.getItem('token'); fetch("http://localhost/api/checktoken.php?username=davide", { method: 'GET', headers:{ 'Content-Type': 'application/json', 'Authorization': "Bearer " + token, }, })

我的有效代码

fetch(`http://localhost/api/checktoken.php?username=davide.gaglione`, {
    method: 'GET',
    
    'Content-Type': 'application/json',
    headers: {
      Authorization: `Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJvbmNvbnN1bHRpbmciLCJhdWQiOiJjbGllbnRzIiwiaWF0IjoxNzAxNTI5NjgyLCJuYmYiOjE3MDE1Mjk2OTIsImRhdGEiOnsidXNlcm5hbWUiOiJkYXZpZGUuZ2FnbGlvbmUiLCJsYW5ndWFnZSI6IkVuZyIsImVudmlyb25tZW50cyI6W3sibmFtZSI6ImVudjEifSx7Im5hbWUiOiJlbnYyIn1dfX0.iC2NntlW6rFx2s6pacSFw6Y_5ib3Bh8jhFl2-MMTX-Q`,
    },
  })

我确认:

  • 前端传递的jwt是正确的
  • jwt实际上是在请求之前从本地存储中获取的。
  • 请求有正确的jwt

奇怪的是,如果我将jwt直接放入react代码中,请求就会被验证,但如果我进行串联,则不起作用

javascript reactjs jwt fetch
1个回答
0
投票

看起来您输入了错误的用户名,

davide
而不是
davide.gaglione

© www.soinside.com 2019 - 2024. All rights reserved.