Ionic:Android - 来自Camera的图像没有使用FileTransfer上传到服务器

时间:2018-03-19 16:37:37

标签: ionic-framework ionic3

我正在尝试从照片中挑选一张图片并上传到服务器。

我有一个PHP脚本来接收文件并复制到服务器位置。我用Postman测试了这个脚本。它运作得很好。

我有一个提供程序将图像上传到PHP脚本。上传功能的代码段如下所示。

    upload(imageData) {
    let posturl = APIURL + 'message/upload';

    const fileTransfer: FileTransferObject = this.transfer.create();

    let options1: FileUploadOptions = {
        fileKey: 'file',
        fileName: 'name.jpg',
        headers: {}    
    }

    return new Promise((resolve, reject) => {
        fileTransfer.upload(imageData, posturl, options1)
        .then((data) => {       
            resolve(data);
        }, (err) => {
            alert(JSON.stringify(err));
            reject(err.message);
        });
    }); 
}

选择图像和调用提供者的TS代码是:

pickimage()
{
    const options: CameraOptions = {
    quality: 100,
    destinationType: this.camera.DestinationType.FILE_URI,
    encodingType: this.camera.EncodingType.JPEG,
    mediaType: this.camera.MediaType.PICTURE,
    sourceType : this.camera.PictureSourceType.PHOTOLIBRARY
    };

    this.camera.getPicture(options).then((imageData) => {
        this.imageURI = imageData;              
    }, (err) => {
        // Handle error
    });
}

用于挑选图片和致电提供商的TS代码:

    this.messageService.upload(this.imageURI).then((result) => {
        this.responseData = result;
        if (this.responseData.status=="success")
        {
                this.mediaurl = this.responseData.mediaurl;
        }
    }, 
    (err) => {
                        alert("Not able to send image");                            
    });

该文件未上传。提供程序中的警报(JSON.stringify(err))返回null。

我正在使用DevApp进行测试。

任何帮助?

0 个答案:

没有答案