Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Phonegap-Blackberry文件传输带有标题401错误_Javascript_Cordova_Jquery Mobile_Blackberry_File Transfer - Fatal编程技术网

Javascript Phonegap-Blackberry文件传输带有标题401错误

Javascript Phonegap-Blackberry文件传输带有标题401错误,javascript,cordova,jquery-mobile,blackberry,file-transfer,Javascript,Cordova,Jquery Mobile,Blackberry,File Transfer,这应该是一个简单的解决方案,但它让我发疯 我正在使用FileTransfer插件将相机拍摄的照片上传到服务器,与文档非常相似。我使用的是基本的HTTP认证,它在Android和iOS上运行得非常好,但在黑莓上,它返回了一个401未经授权的错误。你必须做一些特殊的事情才能让文件上传在BB上工作吗 我将白名单设置为*,所以这不应该是问题所在,加上它在所有其他设备上工作 module.uploadPhoto = function(imageURI, obj) { $.mobile.loadin

这应该是一个简单的解决方案,但它让我发疯

我正在使用FileTransfer插件将相机拍摄的照片上传到服务器,与文档非常相似。我使用的是基本的HTTP认证,它在Android和iOS上运行得非常好,但在黑莓上,它返回了一个401未经授权的错误。你必须做一些特殊的事情才能让文件上传在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);

}

有人知道这里发生了什么吗?我有点疯了。。。谢谢。

我发现我必须在白名单中指定完整的url。通配符运算符从未对我起作用。嗯,这是一个有趣的想法。让我试试,然后再打给你。感谢您的反馈。您所说的“完整URL”是指像myurl.com/api/v1/something这样的内容吗?您将每个API调用都列为白名单,而不是每个API调用—只列出主域并将子域设置为true。所以我把“/>