Javascript iOS上传文件到xmlHttpRequest服务(cordova平台)
我正在尝试将iphone文档目录中的xlsx文件上载到服务 我正在使用xmlHttpRequest以arraybuffer的形式从目录加载文件 将数组缓冲区转换为Uint8Array 创建formData对象并将Uint8Array对象附加到该对象 发送ajax post请求以上载服务 当我这样做时,我得到的响应是状态代码414,错误消息是不支持的媒体类型。我相信这是由于文件,我上传,它不是在正确的格式要求 有什么能帮我找出哪里出了问题,或者有没有其他方法可以做同样的事情Javascript iOS上传文件到xmlHttpRequest服务(cordova平台),javascript,ajax,cordova,xmlhttprequest,Javascript,Ajax,Cordova,Xmlhttprequest,我正在尝试将iphone文档目录中的xlsx文件上载到服务 我正在使用xmlHttpRequest以arraybuffer的形式从目录加载文件 将数组缓冲区转换为Uint8Array 创建formData对象并将Uint8Array对象附加到该对象 发送ajax post请求以上载服务 当我这样做时,我得到的响应是状态代码414,错误消息是不支持的媒体类型。我相信这是由于文件,我上传,它不是在正确的格式要求 有什么能帮我找出哪里出了问题,或者有没有其他方法可以做同样的事情 var serverU
var serverUrl = "http://3.1.177.75/ExcelIO/xsapi/import/";
var request = new XMLHttpRequest();
var classRoot = this;
var xlsxFile = 'points to document directory of iphone where xlsx file is present';
request.open("GET", xlsxFile, true);
request.responseType = "arraybuffer";
request.onload = function(e) {
var arraybuffer = request.response;
var filedata = new Uint8Array(arraybuffer);
var formData = new FormData();
formData.append("ExcelOpenFlags", excelOpenFlags);
formData.append("file", filedata);
$.ajax({
url: serverUrl,
type: 'POST',
success: function completeHandler(data, textStatus, jqXHR) {
if (successCallback) {
alert("success");
}
},
error: function errorHandler(jqXHR, textStatus, errorThrown) {
alert("error "+JSON.stringify(jqXHR) + " -- "+errorThrown);
},
data: formData,
cache: false,
contentType: false,
processData: false,
headers: {
"Accept": "application/json"
}
});
};
request.send();
iPhone发送的内容类型是否为:application/json header?@LeeMeador,请求MIME类型为multipart/form data为什么不使用phonegap的filetransfer api发送?