首页 > 解决方案 > 当我登录 react 和 redux 时建立一个 drupal 会话

问题描述

我需要在登录时建立一个会话,当我输入用户名和密码时 Drupal 会向我发送一个带有 csrf-token 的响应。但是,我不知道如何在反应中创建会话?

export const auth = (username, password) => {
    return dispatch => {
        dispatch(authStart())
        const authData= {
            name: username,
            pass: password
        }
         axios.post('http://localhost:8000/user/login?_format=json', authData)
            .then(response => {
                    localStorage.setItem('token', response.data.csrf_token);
                    localStorage.setItem('fullName', response.data.current_user.name);
                    localStorage.setItem('logoutToken', response.data.logout_token)
                    /* dispatch(authSuccess(response.data.csrf_token, response.data.current_user.name))   */
                                    
            })
         axios.get('http://localhost:8000/session/token')
        .then(res => {
            axios.create({
                baseURL: "http://localhost:8000",
                headers: {
                    'X-CSRF-Token': res.data
                }
            })
            dispatch(authSuccess(res.data, "test"))
        }) 
    };
};

标签: reactjsdrupalsession-cookiesheadless

解决方案


推荐阅读