Javascript Phonegap-iOS文件传输不使用授权标头
我正在尝试将从相机捕获的图像上载到服务器。下面的方法适用于任何Android设备,但由于某些原因,它在iOS上失败了。它返回了一个401错误,这毫无意义:Javascript Phonegap-iOS文件传输不使用授权标头,javascript,ios,cordova,jquery-mobile,Javascript,Ios,Cordova,Jquery Mobile,我正在尝试将从相机捕获的图像上载到服务器。下面的方法适用于任何Android设备,但由于某些原因,它在iOS上失败了。它返回了一个401错误,这毫无意义: var options = new FileUploadOptions(); options.fileKey="files[]"; options.fileName = 'image_' + obj.id + '.jpg'; options.mimeType="image/jpeg"; options.chun
var options = new FileUploadOptions();
options.fileKey="files[]";
options.fileName = 'image_' + obj.id + '.jpg';
options.mimeType="image/jpeg";
options.chunkedMode = false;
var params = new Object();
params.headers = {
Authorization: 'Basic ' + loginCreds
}
options.params = params;
var ft = new FileTransfer();
ft.upload(imageURI, CONTEXT+'URL/files",
function(r){
alert('Finished upload!');
$.mobile.loading( 'hide' );
},
function(error){
console.log(error.http_status);
alert('Error uploading image: ' +error.http_status+ ' and code - ' +error.code);
$.mobile.loading( 'hide' );
},
options, true);
我知道在iOS中有一个设置标题的问题,但我认为这在Phonegap 1.9.0中已经解决了。我做错什么了吗
我检查了服务器日志,似乎授权头只是没有在iOS中设置。奇怪…经过一整天的努力,终于想出了这个办法。因此,Android和iOS在如何使用headers参数上存在差异 安卓:
var params = new Object();
params.headers = {Authorization: 'Basic ' + loginCreds};
options.params = params;
或
iOS:
希望这能帮别人省去一些头疼的事……所以在与它搏斗了一整天之后,我终于想出了这个办法。因此,Android和iOS在如何使用headers参数上存在差异 安卓:
var params = new Object();
params.headers = {Authorization: 'Basic ' + loginCreds};
options.params = params;
或
iOS:
希望这能帮别人省去一些麻烦…你帮我避免了头撞到墙上。非常感谢。它省去了很多头痛,省去了我很多时间,你省去了我头撞墙的麻烦。非常感谢。它省去了很多头痛,省去了我很多时间
options.headers = {Authorization: 'Basic ' + loginCreds};