我希望能够将多部分/表单数据消息发布回服务器。现在我知道我无法直接使用 ajax 调用发送文件,并且我不想发送任何实际文件。我想格式化帖子,以便它模拟文件传输this is the file data
字符串就好像它是文件的内容一样test.txt
就好像它是文件名一样。
例如在后端(php)我想使用echo $_FILES['uploadedfile']['name']
并看到test.txt
.
我想我将不得不处理发送的标头,但不确定我必须设置什么。我还假设我必须以不同于通过 ajax 调用发送的其余数据的方式处理假文件数据。现在我的 ajax 调用如下所示:
$.ajax({
beforeSend: function(req) {
req.setRequestHeader("Accept", '');
req.setRequestHeader("Accept", $('#type').val());
},
'url': $('#url').val(),
'type': $('#verb').val(),
'data': data,
'mimeType': 'multipart/form-data',
'complete': function (jqXHR, textStatus) {
var msg = "Data: " + dump(data);
msg += "<br /><br />Status: " + jqXHR.status + " (" + jqXHR.statusText + " - " + textStatus + ")<br />";
msg += jqXHR.getAllResponseHeaders().replace(/\n/g, "<br />");
msg += "---<br />" + jqXHR.responseText;
$('#results').html(msg);
}
});
您可以使用 FormData 来修补 jquery,https://github.com/francois2metz/html5-formdata https://github.com/francois2metz/html5-formdata并看到这个问题使用 jQuery.ajax 发送 multipart/formdata https://stackoverflow.com/questions/5392344/sending-multipart-formdata-with-jquery-ajax
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)