2016-08-05 3 views
4

Ich habe eine dropzone.js Instanz, die Dateien direkt in einen S3-Bucket mit CORS hochlädt und dann übergibt mir die Dateiinformationen innerhalb von Javascript zu verwenden. This is the tutorial I followed for it...WebKitFormBoundary in Datei Nutzlast beim direkten Upload in s3

Der Datei-Upload selbst scheint gut zu funktionieren, wird die Dateien in dem richtigen Dateipfad in dem S3-Bucket zeigen jedoch alle Dateien so etwas wie diese um es

------WebKitFormBoundaryMH4lrj8VmFKgt1Ar 
Content-Disposition: form-data; name="files[0]"; filename="image-name.png" 
Content-Type: image/png 


IMAGE CONTENT HERE 

------WebKitFormBoundaryMH4lrj8VmFKgt1Ar-- 

Ich kann nicht gewickelt sind für das Leben von mir herauszufinden, warum das passiert. Es spielt keine Rolle, welchen Typ/Mime der Datei ich hochlade, alles beinhaltet es.

Jede Hilfe würde sehr geschätzt werden!

+1

Ihre Anfrage Methode PUT, aber Sie fordern Körper mehrteiliger ist/form- Daten. Lass den Körper einfach die Datei sein. – Musa

+1

Irgendeine Idee wie? Ich glaube nicht, dass ich etwas Wichtiges in der Konfiguration von dropzone.js ändere. Nur nicht sicher, wie man es zwingt, die Datei als den Körper ohne den zusätzlichen Text zu verwenden ... –

Antwort

4

in Ihrem init: function() {..}

fügen Sie folgendes:

 self.on("sending", function(file, xhr, formData) { 
 
     var _send = xhr.send; 
 
     xhr.send = function() { 
 
      _send.call(xhr, file); 
 
     } 
 
     });

+1

Danke! Ich habe Stunden damit verbracht, das herauszufinden. – pinjasaur