这应该是一个简单的解决方案,但它让我发疯。
我正在使用 FileTransfer 插件将用相机拍摄的照片上传到服务器,与文档非常相似。我正在使用基本的 HTTP 身份验证,它在 Android 和 iOS 上完美运行,但在黑莓上,它返回 401 - Unauthorized 错误。您是否需要做一些特别的事情才能让文件上传在 BB 上工作?
我将白名单设置为 *,所以这不应该是问题,而且它可以在所有其他设备上运行......
module.uploadPhoto = function(imageURI, obj) {
$.mobile.loading( 'show', {
text:'Sending File...',
textVisible:true
});
var uploadURL = CONTEXT+'api/'+obj.id+"/files";
var options = new FileUploadOptions();
options.fileKey="files[]";
options.fileName = 'image_' + imageURI.substr(imageURI.lastIndexOf('/')+1);
options.mimeType="image/jpeg";
options.chunkedMode = false;
var params = new Object();
params.thread = 'object-' + obj.id;
options.params = params;
options.headers = {
Authorization: 'Basic ' + loginCreds
};
var ft = new FileTransfer();
ft.upload(imageURI, uploadURL,
function(r){
custAlert('Finished upload!', 'Photo upload successful.');
$.mobile.loading( 'hide' );
},
function(error){
custAlert('Error uploading image with object: ' +error.http_status+ ' and code - ' +error.code, 'Error Uploading');
$.mobile.loading( 'hide' );
},
options, true);
}
有谁知道这里发生了什么?我有点疯了......谢谢。