ng-file-upload not uploading in Ionics

2019-05-21 08:28发布

I am using ng-file-upload library for my Ionic mobile application and Im having challenges in implementing this library. I also used Codeigniter for my REST API. My upload request should have fields(some data) and the images. here is my code so far:

$scope.doSubmitAttachment = function(){
    console.log('@@@@@doSubmitAttachement- Process Request--' + $scope.images);
    $scope.upload($scope.images);
    };



$scope.upload = function (file) {
    Upload.upload({
        url: 'http://192.168.8.247:130/api/upload',
        fields: {'username': 'juan'},
        file: file
    }).progress(function (evt) {
        var progressPercentage = parseInt(100.0 * evt.loaded / evt.total);
        console.log('progress: ' + progressPercentage + '% ' + evt.config.file.name);
    }).success(function (data, status, headers, config) {
        console.log('file ' + config.file.name + 'uploaded. Response: ' + data);
    }).error(function (data, status, headers, config) {
        console.log('error status: ' + status);
    })
};

This is already connected to a button, but everytime I press the button, nothing happens, In the log file i get error 0.

09-01 11:56:07.726  11315-11315/com.ionicframework.myapp I/chromium﹕ [INFO:CONSOLE(173)] "@@@@@doSubmitAttachement- Process Request--file:///data/data/com.ionicframework.myapp/cache/maxresdefault1914240190.jpg", source: file:///android_asset/www/plugins/cordova-plugin-console/www/console-via-logger.js (173)

09-01 11:58:14.906  11315-11315/com.ionicframework.myapp I/chromium﹕ [INFO:CONSOLE(173)] "error status: 0", source: file:///android_asset/www/plugins/cordova-plugin-console/www/console-via-logger.js (173)

09-01 13:16:09.602    1541-1541/com.ionicframework.mase101409 I/chromium﹕ [INFO:CONSOLE(173)] "error data: null", source: file:///android_asset/www/plugins/cordova-plugin-console/www/console-via-logger.js (173)

09-01 13:16:09.602    1541-1541/com.ionicframework.mase101409 I/chromium﹕ [INFO:CONSOLE(173)] "error config: [object Object]", source: file:///android_asset/www/plugins/cordova-plugin-console/www/console-via-logger.js (173)

09-01 13:16:09.606    1541-1541/com.ionicframework.mase101409 I/chromium﹕ [INFO:CONSOLE(173)] "error headers: function (name) {
if (!headersObj) headersObj =  parseHeaders(headers);
if (name) {
var value = headersObj[lowercase(name)];
if (value === void 0) {
value = null;
}
return value;
}
return headersObj;
}", source: file:///android_asset/www/plugins/cordova-plugin-console/www/console-via-logger.js (173)

======EDIT 2=======

I now have a response from the server, i inputed the wrong url. But the problem now is I cant parse the reponse in $_FILES in my codeigniter backend. I var_dump it and here is the response:

09-01 23:13:59.801    5236-5236/com.ionicframework.mase101409 I/chromium﹕ [INFO:CONSOLE(173)] "file uploaded. Response: array(0) {
}
", source: file:///android_asset/www/plugins/cordova-plugin-console/www/console-via-logger.js (173)

Looking forward for your help,I cant figure out what im missing.

Thanks

1条回答
神经病院院长
2楼-- · 2019-05-21 08:38

According to this issue on the repo, you can't use ng-file-upload with Cordova. Instead, you have to use cordova-plugin-file-transfer and, if you want, its ng-cordova adapter.

查看更多
登录 后发表回答