Skip to content
DotNET client implementation of the Tus protocol for resumable file uploads.
Branch: master
Clone or download
Latest commit faa153f Aug 3, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
.idea/.idea.BirdMessenger 更新 demo Aug 2, 2019
.vscode 启动配置 Dec 8, 2018
samples create tag Aug 2, 2019
src 更新 demo Aug 2, 2019
.filenesting.json 更新vs下的项目排列 Aug 1, 2019
BirdMessenger.sln 更新vs下的项目排列 Aug 1, 2019
BirdMessenger.sln.DotSettings.user 增加解决方案 Feb 20, 2019
LICENSE Initial commit Oct 2, 2018 create tag Aug 2, 2019


"Our aim is to solve the problem of unreliable file uploads once and for all. tus is a new open protocol for resumable uploads built on HTTP. It offers simple, cheap and reusable stacks for clients and servers. It supports any language, any platform and any network." -

BirdMessenger 中文名为:青鸟——相传为西王母的信使。 BirdMessnger 是一个基于.NET Standard 的 Tus协议的实现客户端。


Protocol implementation

  • Create
  • HEAD


Package manager

Install-Package BirdMessenger -Version 1.0.0-beta1


dotnet add package BirdMessenger --version 1.0.0-beta1

Getting Started

            FileInfo fileInfo = new FileInfo("test");           
            var hostUri = new Uri(@"http://localhost:5000/files");
            var tusClient=TusBuild.DefaultTusClientBuild(hostUri)
            tusClient.Uploading += printUploadProcess;
            tusClient.UploadFinish += UploadFinish;
            Dictionary<string, string> dir = new Dictionary<string, string>();
            dir["filename"] = fileInfo.FullName;

            var fileUrl = await tusClient.Create(fileInfo, dir);
            var uploadResult = await tusClient.Upload(fileUrl, fileInfo);
  • You can see more examples in unit tests


I will develop in branch of dev

Who is using

You can’t perform that action at this time.