[英]How to save video/MP4 from POST body in C#
我已經使用HTTP POST在IP攝像機(Sercomm RC8021)上設置了運動檢測。 偵測到運動后,相機會啟動HTTP POST,將MP $視頻附加到帖子主體中。 我有一個帶有C#代碼的ASP.NET頁,試圖保存該文件:
protected void Page_Load(object sender, EventArgs e)
{
String filename = "~/MotionDetectAttachment.mp4";
this.Context.Request.SaveAs(Server.MapPath(filename), false);
}
問題是服務器將HTTP 500代碼發送回相機,並且文件未保存。 使用wireshark之前,通信似乎很好,直到wireshark用“ TCP Window Full”標記一個數據包,然后是一系列ZeroWindow和Keep-Alive消息。 最終,連接被重置,並且攝像機記錄了來自服務器的500響應。
關於我在做什么錯的任何想法嗎? 其他類似問題的答案都將“另存為”作為一種保存到文件的方法,但我閱讀的其他所有問題均未提及wireshark問題。
相機日志樣本:
2012年11月2日11:38:35 HTTP-POST:無法發布文件[HTTP錯誤代碼:500]。
2012年11月2日11:38:03警報:檢測到運動。
Wireshark日志中HTTP標頭的一部分:
POST /PFDemo/MotionDetectAttachment.aspx?cameraID=1 HTTP / 1.0
主機:{正確的主機IP}
內容類型:視頻/ mp4
內容長度:158689
授權:基本
連接方式:關閉
X-EventInfo:motion,71,md_window3
(X-EventInfo值來自相機)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.