在使用AJAX, XMLHttpRequest POST方式做OSS文件上传的时候设置提交内容类型为文件
Content-Type:"multipart/form-data"
通过new FormData() 携带数据发送到OSS上,出现异常,看请求发现参数全部拼接上了
boundary=----WebKitFormBoundaryvrx1jLjgvPBcfDTW
boundary是分隔符,分隔多个文件、表单项。如果不自己设置,默认由浏览器自动产生
我这里遇到的问题是,在设置了Content-Type:"multipart/form-data"后,报 405 了,看携带过去的数据也是
这种结构
------WebKitFormBoundaryk4y2P2fXBa25G7XA1d
Content-Disposition: form-data; name="file"
------WebKitFormBoundaryk4y2P2fXBa25G7XA1d--
网上解决方案,各种设置Content-Type,发现都没用。最后不知道在哪里社区看到,文件上传是无需设置Content-Type的,它会默认识别并设置Content-Type:"multipart/form-data",再后面携带随机字符串。试验成功
网友评论