我很難嘗試從網站上的虛擬URL播放視頻。 我無法直接鏈接到視頻,因爲實際文件未位於網絡可訪問的根目錄下的任何位置。而且,虛擬路徑實際上是一個HTTP處理程序(ASP.Net「ASHX」),用於額外的權限檢查等。從虛擬URL播放視頻文件
我試圖建立視頻連接(使用JWPlayer,但沒有得到那點), 的ASHX處理程序我在開始時被簡單地傳輸文件使用HTTP標頭下載, :content-disposition: attachment; filename=example.mp4
當我在瀏覽直接鏈接.mp4文件與虛擬鏈接之間比較瀏覽器(Chrome 20.0.1132.57)的行爲時 - 我注意到直接鏈接會在小型嵌入式視頻播放器中打開,其中as虛擬鏈接僅下載文件。
我已經嘗試(並失敗)捕獲HTTP頭的區別(使用Fiddler)併爲視頻編寫一個特殊的ASHX - 這將發送與IIS完全相同的響應(沒有任何特定的mp4配置,甚至沒有一個啞劇式)。 我似乎無法像直接鏈接那樣從虛擬網址中打開視頻,即使我模擬了所有標題(至少,據我瞭解)。
我試圖發出正確Content-Type & Content-Length
,使用Accept-Ranges & Content-Range
標頭,甚至試圖模仿兩相請求時第一個不具有在Accept
頭video/mp4
或*/*
(我也嘗試只發送1個字節在第一個響應/在兩個響應上發送整個視頻)。 (當我說所有這些值是「正確的」,我的意思是它們與我在Fiddler中捕獲的工作響應相同...)
請問,有人可以解釋什麼觸發瀏覽器將文件視爲視頻? 我需要指定/省略哪些標頭? (除了省略當然content-disposition: attachment
...)