Windows Media Player/Silverlight からのストリーミング メディアの要求を処理できる IHttpHandler を作成しようとしています。つまり、このような生の HTTP リクエストに応答することを意味します (プロトコル ドキュメントから取得)。
"GET /ms/contoso_100_files/0MM0.wmv HTTP/1.0"
"Accept: */*"
"User-Agent: NSPlayer/4.1.0.3925"
"Host: netshow.micro.com"
"Pragma: no-cache,rate=1.000000,stream-time=0,stream-offset=0:0,request-context=1,max-duration=0"
"Pragma: xClientGUID={2200AD50-2C39-46c0-AE0A-2CA76D8C766D}"
ProcessRequest メソッドにたどり着くと、context.Request.Headers コレクションはプラグマ値を公開していないようです。さらに、同じキー (Pragma) を持つ行が 2 つあるため、実際には実行できません。
元のパケットを取得できれば、これらを手動で解析できると想定しています。
とはいえ、次にやりたいことは、HttpWebRequest 型の 2 次リクエストを作成することです。それはまた、一方が他方を上書きすることなく、2つの同一のプラグマ値を受け入れることができないと私が期待する同様の辞書を備えています。
何か不足していますか?