C#如何使用部分内容通过HTTP发送视频?

时间:2017-11-07 21:10:08

标签: c# file http

我目前正在构建“视频服务器”,它必须能够通过HTTP将视频发送到使用HTML(标记)网站的客户端。 我在网站上有这个视频标签:

<video src="http://<?php echo $_SERVER['SERVER_ADDR']; ?>:8080/stream/0c73f95521d163257379e8ed37839e34" autoplay controls muted></video>

这个代码在我的服务器上:( ctx是我的HttpListenerContext)

string file = Directory.GetFiles(
contentDirectory,
ctx.Request.RawUrl.Substring(("/stream/").Length) + ".*",
SearchOption.AllDirectories)[0];

//Console.Log(ctx.Request.Headers.GetValues("Range")[0]);

byte[] data = File.ReadAllBytes(file);
ctx.Response.OutputStream.Write(data, 0, data.Length);
ctx.Response.OutputStream.Flush();
ctx.Response.OutputStream.Close();

我一直在寻找一种方法,但我找不到任何方法。

基本上我要做的是通过HTTP从我的C#程序发送视频到我的网站(托管在另一个网络服务器上)。

更新 我昨天找到了这个答案,但我认为我没有用,因为我使用了HttpListener,当我读得更近时,我发现他使用了TcpListener。 Handle range requests with HttpListener

我希望这可以帮助别人!

谢谢!

0 个答案:

没有答案