TUS adalah protokol berdasarkan HTTP untuk unggahan file yang dapat dilanjutkan . Dinyatakan kembali berarti bahwa unggahan dapat terganggu kapan saja dan dapat dilanjutkan tanpa mengunggah kembali data sebelumnya. Gangguan dapat terjadi dengan sukarela, jika pengguna ingin berhenti, atau secara tidak sengaja jika terjadi masalah jaringan atau pemadaman server.
TUS-JS-Client adalah klien JavaScript murni untuk protokol unggahan TUS yang dapat dilanjutkan dan dapat digunakan di dalam browser , node.js , reaksi aplikasi asli dan Apache Cordova .
Versi Protokol: 1.0.0
Cabang ini berisi TUS-JS-Client V4. Jika Anda mencari rilis besar sebelumnya, setelah itu perubahan besar telah diperkenalkan, silakan lihat tag V3.1.3.
input . addEventListener ( 'change' , function ( e ) {
// Get the selected file from the input element
var file = e . target . files [ 0 ]
// Create a new tus upload
var upload = new tus . Upload ( file , {
endpoint : 'http://localhost:1080/files/' ,
retryDelays : [ 0 , 3000 , 5000 , 10000 , 20000 ] ,
metadata : {
filename : file . name ,
filetype : file . type ,
} ,
onError : function ( error ) {
console . log ( 'Failed because: ' + error )
} ,
onProgress : function ( bytesUploaded , bytesTotal ) {
var percentage = ( ( bytesUploaded / bytesTotal ) * 100 ) . toFixed ( 2 )
console . log ( bytesUploaded , bytesTotal , percentage + '%' )
} ,
onSuccess : function ( ) {
console . log ( 'Download %s from %s' , upload . file . name , upload . url )
} ,
} )
// Check if there are any previous uploads to continue.
upload . findPreviousUploads ( ) . then ( function ( previousUploads ) {
// Found previous uploads so we select the first one.
if ( previousUploads . length ) {
upload . resumeFromPreviousUpload ( previousUploads [ 0 ] )
}
// Start the upload
upload . start ( )
} )
} ) Proyek ini dilisensikan di bawah lisensi MIT, lihat LICENSE .