TUS - это протокол, основанный на HTTP для резюме загрузки файлов . Воспитанный означает, что загрузка может быть прервана в любой момент и может быть возобновлена без повторной загрузки предыдущих данных. Прерывание может произойти охотно, если пользователь хочет сделать паузу или случайно в случае проблемы сети или отключения сервера.
TUS-JS-CLIent-это чистый клиент JavaScript для протокола TUS RESUMABLE HOULD и может использоваться внутри браузеров , Node.js , реагировать нативные и Apache Cordova Applications.
Версия протокола: 1.0.0
Эта ветвь содержит TUS-JS-Client V4. Если вы ищете предыдущий крупный релиз, после чего были введены нарушительные изменения, пожалуйста, посмотрите на тег 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 ( )
} )
} ) Этот проект лицензирован по лицензии MIT, см. LICENSE .