【问题标题】:Set Params and Headers in axios post request在 axios post 请求中设置 Params 和 Headers
【发布时间】:2020-07-08 22:40:58
【问题描述】:

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

这里是查询

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

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

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

当我在控制台记录data 变量时,我得到了正确的值,当我在邮递员上测试这个请求时,它运行良好。

对邮递员的要求

在我的应用上请求

我的 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
            })
        }
    }

有人能告诉我这个请求有什么问题吗?

提前谢谢你!

【问题讨论】:

  • “不插入名称值”你能详细说明一下吗?
  • 您尝试登录token 吗?它的价值可能是问题所在。
  • 我的意思是令牌很好,因为请求工作正常(她插入了好的用户ID)唯一的问题是参数被忽略并且不插入数据库。当我使用相同的令牌和相同的参数在 Postman 上测试这个请求时,它可以工作。
  • 您是否检查了 netwrok 选项卡中的参数?
  • 从邮递员发送数据作为查询参数,而从 axios 发送它作为邮件正文。您需要使其保持一致。

标签: reactjs api post axios postman


【解决方案1】:

发布请求中的第二个参数算作正文。要添加参数,您需要使用另一个参数。对于你的例子,它应该是

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

【讨论】:

    猜你喜欢
    • 2020-02-08
    • 2022-07-24
    • 2018-07-14
    • 1970-01-01
    • 2017-12-08
    • 2020-11-24
    • 2019-07-23
    • 2021-08-02
    • 1970-01-01
    相关资源
    最近更新 更多