[英]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.