如何处理Httponly Cookies JWT授权

问题描述

在我的Django后端SPA项目中,我使用drf-simple-jwt包来处理身份验证。用户登录后,我将access_token存储在cookie中

storage

我向服务器发出一个简单请求=>

export const getPosts = () => (dispatch) => {

    const config = {
        withCredentials: true
    }

    axios.get('http://127.0.0.1:8000/api/v1/',config)
        .then(res => {
            dispatch({
                type: GET_POSTS,payload: res.data
            })
        }).catch(err => console.log(err))
}

由于令牌仅位于httponly cookie中,因此我无法在Authorization: Bearer ${token}之类的标头中发送令牌,因此我使用withCredentials: true并且客户端将cookie发送至服务器。

request cookies

但是我仍然遇到401 Unauthorizated错误!我该如何克服这个问题?

P.S:这是我的django身份验证设置,如果需要的话:

REST_FRAMEWORK = {
    'DEFAULT_AUTHENTICATION_CLASSES':[
        'rest_framework_simplejwt.authentication.JWTAuthentication',# 'dj_rest_auth.jwt_auth.JWTCookieAuthentication',],'DEFAULT_PERMISSION_CLASSES': [
        'rest_framework.permissions.AllowAny'
    ]
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)