使用Axios如何在GET请求中发送用户名

时间:2017-11-10 18:54:25

标签: django reactjs react-redux axios

React-Django应用程序。用户通过Axios PUT提供用户名和密码登录,如果返回正确的JWT和用户名,则两者都存储在sessionStorage中。然后,用户将自动路由到/home,其中应填充特定于用户的信息。

/home componentWillMount() {/ 1}}应该通过Axios GET从数据库中获取/home的内容。有些是静态的,有些与用户相关,例如first_name。我正在尝试将用户名与JWT一起发送以检索此信息但不确定如何操作。

这就是我在检索静态内容(如欢迎消息)时的工作。只想发送username以便我可以添加逻辑服务器端来检索该用户的信息并发送回响应。

import axios from 'axios';
import { push } from 'react-router-redux';
import { ROOT_URL } from '../../config/config.json';

// Establish the different types
export const WELCOME_MESSAGE = 'welcome_message';

export function getWelcome() {

    return function(dispatch) {
        axios
            .get(
                `${ROOT_URL}/api/home/`,
                { headers: 
                    { 
                        'Content-Type': 'application/json',
                        'Authorization': 'JWT ' +  sessionStorage.getItem('token')
                    }
                }
            )
            .then(response => {
                dispatch({ 
                    type: WELCOME_MESSAGE,
                    payload: response.data
                });
            })
            .catch(error => {
                console.log("Broke");
            });
    }
}

最糟糕的情况是,我只是使用POST创建另一个函数,我知道我可以轻松发送此信息。

1 个答案:

答案 0 :(得分:1)

因此,您希望在 AXIOS中 GET 请求方法中发送用户名。
您可以将网址中的用户名作为查询发送,以便在后端可以从网址查询中访问用户名
示例: $ {} ROOT_URL / API /家?用户名= rahulrana
这是通过GET方法实现这一目标的方法 通过URL中的查询是发送信息的唯一方式。