javascript - Axios 标头作为有效负载发送
问题描述
我正在使用 axios 发送发布请求,这是我的代码:
const getHeaders = (token) => {
const headers = {
"content-type": "application/json",
}
if (token !== undefined) headers.Authorization = `Bearer ${token}`;
return headers;
}
const post = async ({ url, body = {}, token }) => {
const requestObject = {
headers: getHeaders(token),
...body
}
console.log(requestObject);
return await axios.post(url, requestObject);
}
这在没有令牌(例如登录请求)时有效,它可以发送它。但是,对于下一个请求,我传递了一个令牌来请求用户详细信息(例如),但是当我查看 Chrome 网络选项卡时,我看到了这个:
因此,标头作为有效负载发送,但是在请求标头中,“授权:承载...”不存在。我究竟做错了什么?
解决方案
如果要发送选项,则需要第三个参数....
const post = ({ url, body = {}, token }) => {
const options = {
headers: getHeaders(token)
}
return axios.post(url,body, options);
}
在这里也async/ await
没有意义
推荐阅读
- ruby-on-rails - 当回形针中没有图像时如何返回零?
- php - 如何解决这个问题 -> Laravel Route 404 错误
- c# - 在 C# 中合并两个数组
- sql - 在@Start 和@End 日期之间;不提取超出日期的记录
- acumatica - 处理 API 调用操作上的 Acumatica 超时
- php - PHP脚本在作为cron作业运行时保存空图像文件
- python - 在python中标记多个单词
- postgresql - Postgresql:按 CompanyID 和 CustomerID 删除重复记录
- linux - 正则表达式适用于 Regex101,但不适用于 bash
- r - 按年份计算缺失数字的百分比