I am trying to write an IHttpHandler that can work with a request for streaming media coming from Windows Media Player/Silverlight. That means responding to a raw HTTP request like this (taken from the protocol document)
"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}"
When I land in the ProcessRequest method, the context.Request.Headers collection does not seem to expose the Pragma values. Further, it can never really do it as there are two lines with the same key (Pragma)!
I am assuming that if I can get the original packet I could parse these out manually.
That said, the next thing I want to do with it is construct a secondary request of type HttpWebRequest. That also sports a similiar dictionary which I expect will also not be able to accept the two identical pragma values without one overwriting the other.
Am I missing something?