实在是找不到在哪里发这个贴如有打搅,请见谅,谢谢。版本: phonegap 版本1.2需求: 使用phonegap 调用图库中的图片文件 将其上传到指定的服务器存储参考资料: http://bbs.phonegapcn.com/thread-12-1-1.html代码:
  function onDeviceReady() {   
  
        // 从指定来源检索图像文件位置  
        navigator.camera.getPicture(uploadPhoto,   
                                    function(message) { alert('get picture failed'); },   
                                    { quality: 50,   
                                    destinationType: navigator.camera.DestinationType.FILE_URI,   
                                    sourceType: navigator.camera.PictureSourceType.PHOTOLIBRARY }  
                                    );   
    }    function uploadPhoto(imageURI) {
    var uid = window.localStorage.getItem("uid");    var options = new FileUploadOptions();
    options.fileKey = "file"; //表单元素的name值 默认file
    options.fileName = imageURI.substr(imageURI.lastIndexOf('/') + 1); //存储到服务器的文件名
    options.mimeType = "image/jpeg"; //mime类型    var params = new Object();
    params.uid = uid; //当前用户的UID
    options.params = params; //通过HTTP请求发送到服务器的一系列可选键/值对    var ft = new FileTransfer();
  
    ft.upload(imageURI, "http://172.168.16.253:8108/Upload_Single.aspx", win, fail, options);
}
问题: 当执行Upload方法后,返回了一个错误,进入了fail错误方法。错误消息是:FileError.ABORT_ERR:中止错误。注: 页面是存在的,在浏览器中可以正常的访问,但是使用安卓手机执行上传时,出现了异常,有谁知道原因么,是不是这种上传不支持aspx,还是说有其它的原因?请各位大能帮忙看看,谢谢了。

解决方案 »

  1.   

    你可以尝试使用www.baidu.com这个地址,如果也报错的话,说明不是你地址的问题。
      

  2.   

    检查3个地方:
    1. options.chunkedMode = false;  这个要设置一下
    2. FileTransfer.prototype.upload = function(filePath, server, successCallback, errorCallback, options, trustAllHosts)
    @param trustAllHosts {Boolean} Optional trust all hosts (e.g. for self-signed certs), defaults to falseft.upload(imageURI, "http://172.168.16.253:8108/Upload_Single.aspx", win, fail, options,true);
    3.imageURI是否已经转换成了绝对路径,没有的话用resolveLocalFileSystemURI转换 
    这3个地方弄对了就没问题了, 这几个影响android系统, IOS系统设不设都能成功, java是烦;