fetch post踩坑记录

当个请求参数时,可以写为

fetch(url, {
    method: 'POST',
    body: JSON.stringify({
        planID: val,
    }),
})
.then(res => res.json())
.then((response) => {
    if (response.code === '0') {
        console.log(response.code);
    }
});

多个请求体时,写为

const formData = new FormData();
// 将"ID=1&signal=value"形式封装成FormData形式
formData.append("Id", '1');
formData.append("signal", 'value');
const opts = {
    method: 'POST',
    body: formData,
};
fetch(`http://${url}/3d/devSync`, opts)
.then(res => res.json())
.then((response) => {
    console.log(response);
});

携带额外请求头时:

fetch(this.api, {
   method: this.key,
   body: JSON.stringify(this.param),
   headers: {
       'Content-Type': 'application/json;charset=UTF-8',
       'Access-Control-Allow-Origin': '*',
       'Access-Control-Allow-Headers': '*',
       'Access-Control-Allow-Methods': 'GET,PUT,POST,DELETE,OPTIONS',
       tk: localStorage.getItem('tk'),
   },
}).then(res => res.json())
   .then((response) => {
       if (response) {

       }
   });

总结
原来传参方式有很多种形式
1、playload形式传参

const opts = {
    method: 'POST',
    body: JSON.stringfy({
    	planID:val,
   	}),
};
fetch(`http://${url}/3d/devSync`, opts);

2、formData形式

const formdata = new FormData();
formdata.append('planID', val);
const opts = {
    method: 'POST',
    body: formdata,
};
fetch(`http://${url}/3d/devSync`, opts);


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值