繁体   English   中英

Javascript XMLHttpRequest与formdata发送空主体

[英]Javascript XMLHttpRequest with formdata sending empty body

我尝试发送这样的文件

var formData = new FormData();
formData.append("avatar", document.getElementById('imageFile').files[0]);

var request = new XMLHttpRequest;
request.open("PATCH", "http://localhost:9090/users/me/avatar");
request.send(formData);

但是,无论我尝试什么,应该发送的所选文件的实际内容都保持空白。 这是Chrome的“网络”标签的屏幕截图

阿凡达字段为空

我尝试使用不同的文件和不同的请求方法,并且始终相同。

我也尝试了formData.append("testfield", "some string"); 并且发送正确,我可以在请求正文中看到“某些字符串”,问题似乎出在文件上。

难道我做错了什么?

谢谢

PATCH是用于API更改而不发送文件的方法。
您应该使用POST或PUT上传文件

var formData = new FormData();
formData.append("avatar", document.getElementById('imageFile').files[0]);

var request = new XMLHttpRequest;
request.open("POST", "http://localhost:9090/users/me/avatar");
request.send(formData);

另外,将formData对象记录到控制台时,您将看不到数据。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM