我尝试通过这种方式在服务器上发送.zip文件:
function sendData(){
let zipFile = document.getElementById('fileReciever').files[0];
let formData = new FormData();
formData.append('id', btoa('7804044924'));
formData.append('data', zipFile);
fetch('http://localhost/xmlReader/reciever.php', {method: "POST", body: formData});
}
但是在$ _POST的服务器(php)上,我仅获得“ id”字段,“ data”不存在。我做错了什么?
我这样尝试:
let zipFile = document.getElementById('fileReciever').files[0];
let formData = new FormData();
formData.append('id', btoa('7804044924'));
formData.append('data', zipFile);
//fetch('http://localhost/xmlReader/reciever.php', {method: "POST", body: formData});
let req = new XMLHttpRequest();
req.open("POST", 'http://localhost/xmlReader/reciever.php');
req.send(formData);
但是结果是相同的-在$ _POST的服务器上,我仅获得一个字段-“ id”,缺少字段“ data”。
答案 0 :(得分:0)
如果要捕获文件,则必须使用$ _FILES而不是$ _POST。
假设您发送的图片比var_dump($ _ FILES)多,您将获得数组内容
这样您就可以获取文件数据。
Here,您会找到很好的示例,例如我在此使用的示例。