A pure Go client for the tus resumable upload protocol
package main
import (
"os""github.com/eventials/go-tus"
)
funcmain() {
f, err:=os.Open("my-file.txt")
iferr!=nil {
panic(err)
}
deferf.Close()
// create the tus client.client, _:=tus.NewClient("https://tus.example.org/files", nil)
// create an upload from a file.upload, _:=tus.NewUploadFromFile(f)
// create the uploader.uploader, _:=client.CreateUpload(upload)
// start the uploading process.uploader.Upload()
}This is not a full protocol client implementation.
Checksum, Termination and Concatenation extensions are not implemented yet.
This client allows to resume an upload if a Store is used.
Store is used to map an upload's fingerprint with the corresponding upload URL.
| Name | Backend | Dependencies |
|---|---|---|
| MemoryStore | In-Memory | None |
| LeveldbStore | LevelDB | goleveldb |
- SQLite store
- Redis store
- Memcached store
- Checksum extension
- Termination extension
- Concatenation extension