我尝试发送这样的文件
// ... adding items to myArray
[myArray insertObject: yadayada ...];
// then let the controller rearrange the objects
[arrayCtrl rearrangeObjects];
但是,无论我尝试什么,应该发送的所选文件的实际内容仍然是空白。这是Chrome网络标签的屏幕截图
我尝试使用不同的文件和不同的请求方法,它总是一样的。
我也尝试了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);
并且发送正确,我可以在请求正文中看到“某个字符串”,问题似乎与文件有关。
我做错了吗?
由于
答案 0 :(得分:1)
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
对象记录到控制台时,您仍然无法查看数据。