首页 > 解决方案 > 如何使用`axios`发布原始数据

问题描述

我有一个接受发布请求的后端休息 API。我可以使用以下设置通过邮递员向 API 发送发布请求:

Method: POST
Header: Content-Type: application/json
Body: raw
      {"date": "2018-08-18"}

但我得到了 405 方法不允许使用下面的 axios 代码出错。

axios
      .post(
        url,
        JSON.stringify({
          date: "2018-08-18"
        }),
        {
          headers: {
            "Content-Type": "application/json"
          }
        }
      )

如果我删除标题,我将得到 400 错误代码,如下所示:

axios
          .post(
            url,
            JSON.stringify({
              date: "2018-08-18"
            })
          )

我也尝试删除 stringify 但它仍然不起作用。我收到 405 回复:

axios
              .post(
                url,
                {
                  date: "2018-08-18"
                },
                {
                  headers: {
                    "Content-Type": "application/json"
                  }
                }
              )

这可能是因为正文消息。有没有办法让我使用 axios 发送原始 json 数据?

标签: javascriptaxios

解决方案


您不需要对正文进行字符串化,axios 会为您完成。

axios.post(url,{
  date: "2018-08-18"
}, {
  headers: {
    "Content-Type": "application/json"
  }
})

推荐阅读