带有有效负载的Axios删除方法

时间:2019-10-04 09:29:40

标签: javascript axios

我在我的应用程序上使用axios发送删除请求,我需要发送一个id列表作为有效负载,但它返回“ 415不支持的媒体类型”。

这是我的代码:

const deviceData = ["31234"];

axios.delete(url, { data: deviceData }).then(res => {
  if (res.status === 200) {
    const pagination = { ...this.state.pagination };
    this.setState({
      loading: false,
      data: res.data.data.devices,
      pagination
    });
  }
});

1 个答案:

答案 0 :(得分:2)

axiox.delete支持请求正文。它接受两个参数:url和可选的config。您可以使用config.data设置响应正文,如下所示:

axios.delete(url, { data: { foo: "bar" } });

有关更多信息,请参见此处:https://github.com/axios/axios/issues/897#issuecomment-343715381

或者您也可以尝试使用以下内容设置标头:'Content-Type':'application/json; charset=utf-8'

const deviceData = ["31234"];

axios.delete(url,
  { headers:{'Content-Type': 'application/json; charset=utf-8'} },
  { data: { deviceData: deviceData } }).then(res => {
  if (res.status === 200) {
    const pagination = { ...this.state.pagination };
    this.setState({
      loading: false,
      data: res.data.data.devices,
      pagination
    });
  }
});