我正在尝试使用MinifiedJS和$.request上传AJAX文件。
我有一个HTML文件和一个输入文件。
<input type="file" id="fileAvatar" />我的Javascript代码是这样的。
$('#fileAvatar').on('change', uploadAvatar);
function uploadAvatar(event) {
var fData = new FormData();
// Add files
_.each(event.target.files, function(file, key) {
fData.append(key, file);
});
// Add ohter parameters
fData.append('user', 267345);
// POST formData
$.request(
'post',
'/ajax/upload_avatar.php',
fData,
{'Content-Type': 'multipart/form-data'}
).then(function(response){
console.log(response);
});
}我可以在Chrome Dev工具上看到/ajax/upload_avatar.php的POST,但我的PHP上没有任何参数,看起来表单数据对象没有发送。
有什么想法吗?
发布于 2014-10-08 05:09:57
request()的第4个参数不是headers列表,而是一个设置对象。如果要指定Content-Type,则需要使用headers设置:
$.request(
'post',
'/ajax/upload_avatar.php',
fData,
{headers: {'Content-Type': 'multipart/form-data'}}
)https://stackoverflow.com/questions/26164617
复制相似问题