如何用React-Native Post Form 表单

今天使用react native 发送请求的时候,发现使用

fetch('https://mywebsite.com/endpoint/', {
  method: 'POST',
  headers: {
  },
  body: JSON.stringify({
    firstParam: 'yourValue',
    secondParam: 'yourOtherValue',
  })
})

默认发送’Content-Type’: ‘application/json’ 的请求,但是现在想发送Form表单,该怎么写尼?查阅官方文档
无解,各种stackoverflow还是没有类似的答案,每当stackoverflow上都没有答案的时候,我就准备看源码了,这时候,突然想到立成同学的一句话,github的issues上面比文档还可靠,抱着试试看的态度,翻了一下issue,原来github的issue还有内部搜索功能,真方便。功夫不负有心人,在#5308
这里找到了答案:

let formData = new FormData();
formData.append('image', {uri: image.uri, type: 'image/jpg', name: 'image.jpg'});
formData.append('description', String(data.description));

let options = {};
options.headers['Content-Type'] = 'multipart/form-data; boundary=6ff46e0b6b5148d984f148b6542e5a5d';
options.body = formData;
return fetch(uri, options).then((response) => {
   .... 
});

只要把body从Json换成FromData就可以了,解决完问题然后下班的感觉真好。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值