Http headers 使用axios在标头中传递JWT

Http headers 使用axios在标头中传递JWT,http-headers,axios,Http Headers,Axios,我已经创建了一个小项目,它有一个节点后端和react前端,通过REST调用获取数据。我使用了Axios库,但是当我传递标题时,我不断收到一个错误,上面写着: 加载资源失败:服务器响应状态为401(未授权) 我找到了两种方法,但都不管用。它们是: export const getUsersDetails=()=>{ console.log('calling'); return (dispatch) => { return axios.get('http://localh

我已经创建了一个小项目,它有一个节点后端和react前端,通过REST调用获取数据。我使用了Axios库,但是当我传递标题时,我不断收到一个错误,上面写着:

加载资源失败:服务器响应状态为401(未授权)

我找到了两种方法,但都不管用。它们是:

export const getUsersDetails=()=>{
  console.log('calling');
  return (dispatch) => {
    return axios.get('http://localhost:3030/users',{headers: { "Authorization": localStorage.getItem('jwtToken') }}).then((data)=>{
                 console.log('data comming',data);
                dispatch(getUsersData(data));
            }).catch((error)=>{
              console.log('error comming',error);
                dispatch(errorgetUsersData(error));
            });
        };
}


但是当我使用postman时,我从后端获取所需的数据。有什么特别的原因让我一直收到这个未经授权的错误吗?

您需要在令牌之前连接'Bearer',如下所示:

axios.defaults.headers.common['Authorization'] = 
                                'Bearer ' + localStorage.getItem('jwtToken');

在这里,它只适用于
axios.defaults.headers.Authorization='Bearer'+localStorage.getItem('jwtToken')。顺便说一句,我使用的是Vue,我把它放在
main.js
中。您好,Fuseldieb或dplaza或Clonkex,您能更新代码吗。。我不明白它放在哪里:axios.defaults.headers.common['Authorization']='Bearer'+localStorage.getItem('jwtToken');很抱歉我也遇到了同样的问题JWT代表JSON Web令牌。当您使用变量名
jwtToken
时,它实际上读起来就像JSON Web令牌。我建议省略冗余,只使用
jwt
(或者其他一些非冗余名称)。
axios.defaults.headers.common['Authorization'] = 
                                'Bearer ' + localStorage.getItem('jwtToken');