如何使用 axios get 请求发送正文数据和标头?

Posted

技术标签:

【中文标题】如何使用 axios get 请求发送正文数据和标头?【英文标题】:How to send body data and headers with axios get request? 【发布时间】:2020-08-16 10:53:27 【问题描述】:

我试过了

axios.get(url, headers:,data:) 

但它不适用于这个。

【问题讨论】:

【参考方案1】:

你应该参考https://github.com/axios/axios#request-config

检查数据和标题部分。

【讨论】:

很遗憾,GET 方法中的数据不被视为正文。显然 Axios 不支持 GET 方法的请求正文。奇怪的是,像 Postman 这样的工具很容易支持它。我也在寻找解决方案。【参考方案2】:

你可以试试这个:

const getData = async () => 
    try 
        const response = await axios.get(`https://jsonplaceholder.typicode.com/posts`, 
            method: 'GET',
            body: JSON.stringify(
                id: id,
                title: 'title is here',
                body: 'body is here',
                userId: 1
            ),
            headers: 
                "Content-type": "application/json; charset=UTF-8"
            
        )
            .then(response => response.json())
            .then(json => console.log(json));
        console.warn(response.data);
     catch (error) 
        console.warn(error);
    

【讨论】:

【参考方案3】:

据我所知,您无法使用 GET 请求发送正文数据。使用 get 你只能有标题。只需简单地更改为 POST,然后您就可以执行以下操作:

const bodyParameters = 
      key: "value",
    ;
    const config = 
      headers:  Authorization: `Bearer $userToken` , 
    ;
      axios.post("http://localhost:5000/user", bodyParameters, config)
      .then((res)=> 
       console.log(res)
      )
      .catch((err) => console.log(err));
  ;

或者如果你想通过 GET 请求发送标头

axios.get('/user', 
    params: 
      ID: 12345
    
  )
  .then(function (response) 
    console.log(response);
  )
  .catch(function (error) 
    console.log(error);
  )
  .then(function () 
    // always executed
  );  

【讨论】:

2014 年以后的标准允许获取正文【参考方案4】:

//data是要作为请求体发送的数据 // 仅适用于请求方法 'PUT'、'POST'、'DELETE 和 'PATCH'

https://***.com/a/54008789

【讨论】:

以上是关于如何使用 axios get 请求发送正文数据和标头?的主要内容,如果未能解决你的问题,请参考以下文章

axios请求中未发送正文数据

在 AXIOS 中为 GET 方法发送请求正文会引发错误

尝试在 Axios GET 的正文中发送数据以在 Django 后端使用,但 request.body 的打印为空

axios如何一次性发送多个网络请求?

如何使用 Express 和 Axios 从我的 get 请求发送响应对象到前端?

如何使用 Axios 库发送 XML 数据