2017-09-13 20 views
0

J'utilise le plugin fileTransfer pour télécharger la signature dans mon application ionique 2. Pour capturer la signature j'utilise angular2-signaturepad.Impossible de télécharger la signature vers le serveur distant en utilisant le plugin `fileTransfer` dans ionic mais fonctionne bien dans le serveur local

let options: FileUploadOptions = { 
    fileKey: 'file', 
    fileName: 'Order_'+this.order_data.order_id+"_"+this.order_data.order_type+".png", 
    headers: {}, 
}; 
fileTransfer.upload(this.signaturePad.toDataURL(), 
this.api+'php/wd_upload.php?location=signs', options) 
    .then((data) => { 
     // success 
    }, (err) => { 
     // error 
    }); 

Le code ci-dessus fonctionne correctement sur le serveur local et la signature est transférée avec succès. Mais quand j'essaie de changer cette API pour référencer le serveur distant. Ce transfert de fichier a échoué avec l'erreur suivante

body: "<head><title>Not Acceptable!</title></head><body><h1>Not Acceptable!</h1><p>An appropriate representation of the requested resource could not be found on this server. This error was generated by Mod_Security.</p></body></html>" 
code: 1 
exception: "http://<remote_server>/php/wd_upload.php?location=signs" 
http_status: 406 
source: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAADICAYAAABS39xVAAAYsElEQVR4Xu2dXXBVVZbHd4QmCfMyScq ...." 
target: "http://<remote_server>/php/wd_upload.php?location=signs" 

Veuillez résoudre ce problème?

Répondre

0

Tout fonctionnait bien quand je l'ai remplacé option comme suit

let options: FileUploadOptions = { 
    fileKey: 'file', 
    fileName: 'Order_'+this.order_data.order_id+"_"+this.order_data.order_type+".png", 
    httpMethod : 'POST', 
    mimeType: 'image/png', 
    chunkedMode: false, 
    headers : {"Accept": "image/png"} 
    };