taro h5 formData上传图片的坑-Required request part ‘file‘ is not present

这篇具有很好参考价值的文章主要介绍了taro h5 formData上传图片的坑-Required request part ‘file‘ is not present。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

描述:用formData上传图片

1、生成formData
const formData = new FormData()
formData.append('file', data) // data是file
formData.append('xxx', 'xxx') // 添加其他参数
2、用taro.request请求
Taro.request({
	url: 'xxxx',
	data: formData,
	header: {
		'Content-Type': 'multipart/form-data;'
	},
	method: 'POST',
})

结果:报错500
taro h5 formData上传图片的坑-Required request part ‘file‘ is not present,# Taro,H5,taro,上传图片
taro h5 formData上传图片的坑-Required request part ‘file‘ is not present,# Taro,H5,taro,上传图片

3、用原生请求
let xmlhttp = new XMLHttpRequest()
xmlhttp.open('post', 'xxxx')
xmlhttp.setRequestHeader('token', 'xxx')
xmlhttp.onreadystatechange = function (res) {
  if (xmlhttp.readyState === 4 && xmlhttp.status === 200) {
    console.log(xmlhttp.response)
  }
}
xmlhttp.send(formData)

结果:成功
taro h5 formData上传图片的坑-Required request part ‘file‘ is not present,# Taro,H5,taro,上传图片
taro h5 formData上传图片的坑-Required request part ‘file‘ is not present,# Taro,H5,taro,上传图片
注意,并没有设置content-type, 但是请求自动添加了content-type

4、对比后发现

原生的比taro多了boundary, boundary是分割线, 那把这个boundary复制下行不行呢?
!!!是不行的
taro h5 formData上传图片的坑-Required request part ‘file‘ is not present,# Taro,H5,taro,上传图片

5、总结

网上很多资料显示,formData上传时不需要设置content-type, 而taro.request默认是设置的content-type=application/json, 就算手动设置了,也不会自动加boundary, 而这个boundary的值怎么算的没有去深究了,最后还是选择的原生…文章来源地址https://www.toymoban.com/news/detail-666956.html

到了这里,关于taro h5 formData上传图片的坑-Required request part ‘file‘ is not present的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包