似乎有很多关于此的帖子,但在其中找不到解决方案,我已经碰壁了。帮助,亲爱的堆垛机!
我正在编写一些代码,让用户选择个人资料图片,对其进行裁剪,然后将裁剪后的图像保存在服务器上。我正在使用 Cropper.js 库来处理实际的裁剪并确定它正在工作,因为我可以使用以下代码实时显示裁剪:
var imageData = cropper.getCroppedCanvas().toDataURL();
var profileimage = document.getElementById('myProfilePhoto');
profileimage.src = imageData;
现在我想将裁剪后的图像发送到服务器,最好的方法似乎是创建一个 blob 和 Ajax 到一个 php 脚本来处理它。
cropper.getCroppedCanvas().toBlob(function (blob) {
var formData = new FormData();
formData.append('file', blob);
formData.append('uuid', '{a unique identifier}');
$.ajax({
type: 'POST',
url: '{the php script}',
data: formData,
processData: false,
contentType: false,
success: function (response) {
console.log('Upload success: '+response);
},
error: function () {
console.log('Upload error');
}
});
});
在这个阶段,我只是将我的 php 脚本放到 var_dump($_REQUEST) 中,这样我就可以在控制台中看到脚本认为它得到了什么。但是,响应只是发回默认的 $_REQUEST 对象,例如 PHPSESSID,没有文件或 uuid 输入。
我究竟做错了什么?
在此先感谢您的任何指点。