首页 > 解决方案 > 将 post 请求中的标头发送到 API 的问题

问题描述

我正在向 API 发出发布请求,但我看到的问题是 authtoken 在请求有效负载中发送,而不是在网络选项卡中发送请求标头。

const fetchData =(id,authToken)=>
    axios
     .post(`${APIUrl}/${id}/math`,{
         headers:{
             ...getAuthHeaderWithContentType(authToken, "JSON")
         }
     })
     .then(resp => (resp && resp.data ? resp.data : null));

标头应该出现在请求标头而不是请求有效负载中。

标签: javascriptreactjsaxios

解决方案


因为您发布了一个包含headers字段的对象data

axios官方文件说: axios.post(url, data, options)

只需添加null{}好像data您没有任何数据要发布。

const fetchData = (id, authToken) =>
  axios
    .post(`${APIUrl}/${id}/math`, {}, {
      headers: {
        ...getAuthHeaderWithContentType(authToken, "JSON")
      }
    })
    .then(resp => (resp && resp.data ? resp.data : null));

但是,我认为POST不推荐使用获取数据的方法。


推荐阅读