Sto ancora cercando di avvolgere la mia mente intorno ad esso.Come caricare un file con l'API di recupero JS?
posso avere l'utente selezionare il file (o anche più) con l'ingresso di file:
<form>
<div>
<label>Select file to upload</label>
<input type="file">
</div>
<button type="submit">Convert</button>
</form>
e posso catturare l'evento submit
utilizzando <fill in your event handler here>
. Ma una volta fatto, come posso inviare il file usando fetch
?
fetch('/files', {
method: 'post',
// what goes here? What is the "body" for this? content-type header?
}).then(/* whatever */);
Quindi ero vicino, ma non proprio lì. Cosa fai con i file più grandi? Sta caricando tutto nella memoria del browser o lo sta inviando al server mentre legge? – deitch
Per prima cosa è necessario eseguire lo streaming del file leggendo blocchi di piccole dimensioni, quindi è sufficiente conservare una parte del file in memoria. Un oggetto file è un'istanza di un oggetto blob, quindi è possibile utilizzare il suo metodo .slice() per creare questi blocchi. – Damien
Bingo. Grazie, @ Damiano – deitch