# Fichiers temporaires

Cette collection décrit les fichiers temporaires d'Anakeen Platform.

# URL

L'URL d'accès est :/api/v2/temporaryFiles/

# Méthodes

La collection temporaryFiles implémente les éléments suivants:

  • Collection
Action URL Action effectuée
GET /api/v2/temporaryFiles N/A
POST /api/v2/temporaryFiles/ Crée un nouveau fichier temporaire
PUT /api/v2/temporaryFiles/ N/A
DELETE /api/v2/temporaryFiles/ N/A

# Création d'un fichier temporaire

# URL

POST /api/v2/temporaryFiles/

Ce fichier est temporairement stocké dans le vault. S'il n'est pas associé à un Smart Element, le fichier temporaire est supprimé au bout d'une période définie par le paramètre applicatif CORE_TMPDIR_MAXAGE.

# Contenu

# Format urlEncoded

Le contenu de la requête contient une variable (type file) contenant le contenu du fichier.

-----------------------------70122309720638098951066485136
 Content-Disposition: form-data; name="fi_file"; filename="my_file.jpeg"
 Content-Type: image/jpeg
 ...

Le type de la requête est application/x-www-form-urlencoded.

N.B.

Ce format peut être utilisé directement depuis un formulaire HTML.

# Utilisation d'une requête ajax

L'envoi du fichier peut aussi être fait en javascript via l'objet FormData

var fd = new FormData();
fd.append("myFile", myFile); // myFile objet de type File
$.ajax({
  type: "POST",
  url: "api/v1/temporaryFiles/",
  processData: false,
  contentType: false,
  cache: false,
  data: fd
});

N.B.

Tous les navigateurs ne supportent pas l'objet FormData.

# Structure de retour

Le retour est une donnée JSON.

# En cas de réussite

La partie data contient les champs suivants:

  • file.uri : URI d'accès à la nouvelle ressource,
  • file.reference : référence pouvant être utilisée comme valeur dans un Smart Field de type file ou image,
  • file.size : taille du fichier en octets,
  • file.fileName : nom du fichier (basename),
  • file.mime : type mime (système),
  • file.cdate : date de création,
  • file.mdate : date de modification,
  • file.downloadUrl : URL de téléchargement du fichier.

Exemple:

{
  "success": true,
  "messages": [],
  "data": {
    "file": {
      "cdate": "2016-08-30 11:41:45",
      "downloadUrl": "api/v1/images/recorded/original/8878229557124583290.png",
      "fileName": "une-fourmis-panda-ark.jpg",
      "iconUrl": "api/v1/images/assets/sizes/20/mime-image.png",
      "id": "8878229557124583290",
      "mime": "image/jpeg",
      "reference": "image/jpeg|8878229557124583290|une-fourmis-panda-ark.jpg",
      "size": "102997",
      "thumbnailUrl": "api/v1/images/recorded/sizes/48/8878229557124583290.png"
    }
  },
  "exceptionMessage": "",
  "headers": []
}

# En cas d'échec

Les raisons d'échec spécifiques à cette requête sont:

Raison Status HTTP Code d'erreur
Le fichier n'a pas pu être enregistré dans le vault 400 CRUD0300
Fichier non trouvé dans le vault 404 File not found CRUD0301
Fichier non enregistré (taille du fichier trop grande) 400 CRUD0302
Erreur lors du téléversement du fichier 400 CRUD0303

# Utilisation

Une fois le fichier ajouté, il peut être associé à un Smart Element en indiquant sa référence dans la valeur d'un Smart Field de type file comme tout autre Smart Field en utilisant:

C'est la propriété référence qui doit être affectée à la valeur du Smart Field fichier.