Files
cordova-plugin-file-transfer/doc/fr/index.md
T

9.2 KiB

org.apache.cordova.file-transfer

Ce plugin vous permet de télécharger des fichiers.

Installation

cordova plugin add org.apache.cordova.file-transfer

Plates-formes prises en charge

  • Amazon Fire OS

  • Android

  • BlackBerry 10 *

  • iOS

  • Windows Phone 7 et 8 *

  • Windows 8 *

  • *Ne supportent pas onprogress ni abort() *

Transfert de fichiers

Le FileTransfer objet fournit un moyen de télécharger des fichiers à l'aide d'une requête HTTP de la poste plusieurs partie et pour télécharger des fichiers aussi bien.

Propriétés

  • onprogress : fonction appelée avec un ProgressEvent à chaque fois qu'un nouveau segment de données est transféré. (Function)

Méthodes

  • upload : envoie un fichier à un serveur.

  • download : télécharge un fichier depuis un serveur.

  • abort : annule le transfert en cours.

upload

Paramètres:

  • filePath : chemin d'accès complet au fichier sur l'appareil.

  • server : l'URL du serveur destiné à recevoir le fichier, encodée via encodeURI().

  • successCallback: un callback passé à un objet Metadata. (Fonction)

  • errorCallback : callback d'erreur s'exécutant si une erreur survient lors de la récupération de l'objet Metadata . Appelée avec un objet FileTransferError. (Function)

  • trustAllHosts : paramètre facultatif, sa valeur par défaut est false. Si sa valeur est réglée à true, tous les certificats de sécurité sont acceptés. Ceci peut être utile car Android rejette les certificats auto-signés. N'est pas recommandé pour une utilisation en production. Supporté sous Android et iOS. (boolean)

  • options: paramètres facultatifs (objet). Clés valides :

    • fileKey : le nom de l'élément form. La valeur par défaut est file. (DOMString)
    • fileName : le nom de fichier à utiliser pour l'enregistrement sur le serveur. La valeur par défaut est image.jpg. (DOMString)
    • mimeType : le type mime des données à envoyer. La valeur par défaut est image/jpeg. (DOMString)
    • params : un ensemble de paires clé/valeur facultative à passer dans la requête HTTP. (Objet)
    • chunkedMode : s'il faut transmettre ou non les données en mode streaming de bloc. La valeur par défaut est true. (Boolean)
    • headers : un objet représentant les noms et valeurs d'en-têtes à transmettre. Utiliser un tableau permet de spécifier plusieurs valeurs. (Objet)

Exemple

// !! Assumes variable fileURI contains a valid URI to a text file on the device

var win = function (r) {
    console.log("Code = " + r.responseCode);
    console.log("Response = " + r.response);
    console.log("Sent = " + r.bytesSent);
}

var fail = function (error) {
    alert("An error has occurred: Code = " + error.code);
    console.log("upload error source " + error.source);
    console.log("upload error target " + error.target);
}

var options = new FileUploadOptions();
options.fileKey = "file";
options.fileName = fileURI.substr(fileURI.lastIndexOf('/') + 1);
options.mimeType = "text/plain";

var params = {};
params.value1 = "test";
params.value2 = "param";

options.params = params;

var ft = new FileTransfer();
ft.upload(fileURI, encodeURI("http://some.server.com/upload.php"), win, fail, options);

Exemple avec télécharger des en-têtes et des événements de progression (Android et iOS uniquement)

function win(r) {
    console.log("Code = " + r.responseCode);
    console.log("Response = " + r.response);
    console.log("Sent = " + r.bytesSent);
}

function fail(error) {
    alert("An error has occurred: Code = " + error.code);
    console.log("upload error source " + error.source);
    console.log("upload error target " + error.target);
}

var uri = encodeURI("http://some.server.com/upload.php");

var options = new FileUploadOptions();
options.fileKey="file";
options.fileName=fileURI.substr(fileURI.lastIndexOf('/')+1);
options.mimeType="text/plain";

var headers={'headerParam':'headerValue'};

options.headers = headers;

var ft = new FileTransfer();
ft.onprogress = function(progressEvent) {
    if (progressEvent.lengthComputable) {
      loadingStatus.setPercentage(progressEvent.loaded / progressEvent.total);
    } else {
      loadingStatus.increment();
    }
};
ft.upload(fileURI, uri, win, fail, options);

FileUploadResult

Un objet FileUploadResult est passé à la callback de succès de la méthode upload() de l'objet FileTransfer.

Propriétés

  • bytesSent : le nombre d'octets envoyés au serveur dans le cadre du téléchargement. (long)

  • responseCode : le code de réponse HTTP retourné par le serveur. (long)

  • response : la réponse HTTP renvoyée par le serveur. (DOMString)

iOS Quirks

  • Ne prend pas en charge les propriétés responseCode et bytesSent.

download

Paramètres:

  • source : l'URL du serveur depuis lequel télécharger le fichier, encodée via encodeURI().

  • target : chemin d'accès complet au fichier sur l'appareil.

  • successCallback : une callback de succès à laquelle est passée un objet FileEntry. (Function)

  • errorCallback : une callback d'erreur s'exécutant si une erreur se produit lors de la récupération de l'objet Metadata. Appelée avec un objet FileTransferError. (Function)

  • trustAllHosts: paramètre facultatif, valeur par défaut est false . Si la valeur true , il accepte tous les certificats de sécurité. Ceci est utile parce que Android rejette des certificats auto-signés. Non recommandé pour une utilisation de production. Supporté sur Android et iOS. (boolean)

  • options : paramètres facultatifs, seules les en-têtes sont actuellement supportées (par exemple l'autorisation (authentification basique), etc.).

Exemple

// !! Suppose que filePath est un chemin valide sur l'appareil

var fileTransfer = new FileTransfer();
var uri = encodeURI("http://some.server.com/download.php");

fileTransfer.download(
    uri,
    filePath,
    function(entry) {
        console.log("Téléchargement terminé : " + entry.fullPath);
    },
    function(error) {
        console.log("Source pour l'erreur de téléchargement : " + error.source);
        console.log("Destination pour l'erreur de téléchargement : " + error.target);
        console.log("Code de l'erreur de téléchargement : " + error.code);
    },
    false,
    {
        headers: {
            "Authorization": "Basic dGVzdHVzZXJuYW1lOnRlc3RwYXNzd29yZA=="
        }
    }
);

abort

Abandonne un transfert en cours. Un objet FileTransferError avec un code d'erreur FileTransferError.ABORT_ERR est passé à la callback d'erreur onerror.

Exemple

// !! Suppose que la variable fileURI contient l'URI valide d'un fichier texte sur l'appareil

var win = function(r) {
    console.log("Ne devrait pas être appelée.");
}

var fail = function(error) {
    // error.code == FileTransferError.ABORT_ERR
    alert("Une erreur est survenue : code = " + error.code);
    console.log("Source pour l'erreur de téléchargement : " + error.source);
    console.log("Destination pour l'erreur de téléchargement : " + error.target);
}

var options = new FileUploadOptions();
options.fileKey="file";
options.fileName="myphoto.jpg";
options.mimeType="image/jpeg";

var ft = new FileTransfer();
ft.upload(fileURI, encodeURI("http://some.server.com/upload.php"), win, fail, options);
ft.abort();

FileTransferError

Un objet FileTransferError est passé à une callback d'erreur lorsqu'une erreur survient.

Propriétés

  • code : l'un des codes d'erreur prédéfinis énumérés ci-dessous. (Number)

  • source : l'URI de la source. (String)

  • target: l'URI de la destination. (String)

  • http_status : code d'état HTTP. Cet attribut n'est disponible que lorsqu'un code de réponse est fourni via la connexion HTTP. (Number)

Constantes

  • FileTransferError.FILE_NOT_FOUND_ERR
  • FileTransferError.INVALID_URL_ERR
  • FileTransferError.CONNECTION_ERR
  • FileTransferError.ABORT_ERR