我上传使用XMLHttpRequest的文件。 这里是JS的功能,即上传文件:
var upload = function(file) {
// Create form data
var formData = new FormData();
formData.append('file', file);
var xhr = new XMLHttpRequest();
// Open
xhr.open('POST', this.options.action);
// Set headers
xhr.setRequestHeader("Cache-Control", "no-cache");
xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest");
xhr.setRequestHeader("Content-Type", "multipart/form-data");
xhr.setRequestHeader("X-File-Name", file.fileName);
xhr.setRequestHeader("X-File-Size", file.fileSize);
xhr.setRequestHeader("X-File-Type", file.type);
// Send
xhr.send(formData);
}
在服务器端,在upload.php的我读取的文件是这样的:
file_put_contents($filename, (file_get_contents('php://input')));
一切工作正常,但我得到一个PHP的警告:
Missing boundary in multipart/form-data POST data in Unknown on line 0
。
如果删除该行: xhr.setRequestHeader("Content-Type", "multipart/form-data");
警告消失。
我应该在此问题?