cancel
Showing results for 
Search instead for 
Did you mean: 

[résolu] Fichier corrompu après upload par automation PHP

Goulven_
Champ on-the-rise
Champ on-the-rise

Bonjour,

J'utilise Nuxeo Automation PHP pour envoyer des documents sur Nuxeo depuis mon application web. J'ai réussi à faire les requêtes pour envoyer les fichiers sur Nuxeo, cependant, lorsque je télécharge un fichier que j'ai envoyé, celui ci est corrompu.

Avez vous déjà rencontré ce problème ?

Voici la requête que j'utilise pour attacher mon fichier :

$answer = $nuxeoSession->newRequest("Blob.Attach") ->set('type', 'File') ->set('params', 'document', $this->data['Nuxeo']['uid']) ->loadBlob($this->data['Nuxeo']['doc']['tmp_name'], $this->data['Nuxeo']['doc']['type'], $this->data['Nuxeo']['doc']['name']) ->sendRequest();

Cordialement,

Goulven Brisson

1 ACCEPTED ANSWER

Goulven_
Champ on-the-rise
Champ on-the-rise

Après avoir fouillé encore quelques heures sur internet, un post m'a mis la puce à l'oreille :

A la ligne 137 de NuxeoAutomationUtilities.php il y a ce code :

$data = "\r\n" . $data . $blobheaders . $this->blobList[$cpt][2] . "\r\n"  . "\r\n" ;

Mon problème était dû au fait qu'il y avait deux "\r\n". En supprimant l'un des deux, il n'y a plus de soucis, et mes documents ne sont plus corrompus.

View answer in original post

6 REPLIES 6

Goulven_
Champ on-the-rise
Champ on-the-rise

Après avoir fouillé encore quelques heures sur internet, un post m'a mis la puce à l'oreille :

A la ligne 137 de NuxeoAutomationUtilities.php il y a ce code :

$data = "\r\n" . $data . $blobheaders . $this->blobList[$cpt][2] . "\r\n"  . "\r\n" ;

Mon problème était dû au fait qu'il y avait deux "\r\n". En supprimant l'un des deux, il n'y a plus de soucis, et mes documents ne sont plus corrompus.

Merci pour ce retour. Est ce un bug de la librarie ?

Goulven_
Champ on-the-rise
Champ on-the-rise

Oui en effet, ça vient de la librairie, du fichier NuxeoAutomationUtilities.php, dans la fonction multiPart().

Merci Goulven, c'est corrigé. N'hésite pas si tu as d'autres retours de ce genre

Goulven_
Champ on-the-rise
Champ on-the-rise

De rien, j'aime autant mettre la correction directement ici puisque j'ai cherché quelques heures avant de pouvoir trouver cette solution. Par contre, depuis que j'ai effectué cette modification, les fichiers que je télécharge depuis FireFox n'ont plus d'extension s'ils contiennent un espace dans leur nom. Je n'ai plus que le premier mot du titre.. Savez vous d'où cela peut venir ?

Goulven_
Champ on-the-rise
Champ on-the-rise

Bon du coup j'ai corrigé mon dernier bug en remplaçant les espaces par des underscores quand l'utilisateur est là depuis Firefox... Ce n'est pas très joli, mais je n'ai trouvé que ça.