在axios发布请求中设置参数和标题

时间:2020-03-28 08:08:00

标签: reactjs api post axios postman

我最近在应用程序宽度和axios请求中遇到了一个愚蠢的问题。

这是查询

const data =  { name: name }
const headers = { headers: { Authorization: `Bearer ${token}` } }

axios.post('http://localhost:3333/list/add', data, headers)

此请求有效,但不插入名称值...

当我在控制台上记录data变量时,我具有正确的值,并且当我在邮递员上测试此请求时,它运行良好。

邮递员要求 enter image description here

我的应用程序上的请求 enter image description here

我的API代码

async add({ request, auth, response }) {
        try {
            const list = new List()

            let user = await User.find(auth.current.user.id)
            let name = request.get('name')

            list.fill(name)

            const result = await list.save()

            await Database
                .insert({'user_id': user.id, 'list_id': list.id})
                .into('users_has_lists')

            return response.json({
                query_name: 'add',
                status: 'success',
                data: list
            })

        } catch (error) {
            return response.status(400).json({
                status: 'error',
                message: error.message
            })
        }
    }

有人可以告诉我此请求出了什么问题吗?

提前谢谢!

1 个答案:

答案 0 :(得分:1)

发布请求中的第二个参数计为正文。要添加参数,您需要使用另一个参数。对于您的示例,应该是

axios.post('http://localhost:3333/list/add', null, {headers:headers, params:data})