title: Silverlight WebClient Accept header being overwritten in Firefox 3
body: <p>I've got a Silverlight app that talks to a REST web service using the WebClient class. It runs fine in IE 8 and Chrome 5, but the web service call fails in Firefox 3. </p>
  
  <p>I've narrowed down the problem: Firefox 3 is changing the Accept header of my HTTP request. here's my simplified code:</p>
  
  <pre><code>// Use the ClientHttp stack.
  WebRequest.RegisterPrefix("http://", WebRequestCreator.ClientHttp);
  
  // Call the web service.
  var webClient = new WebClient();
  webClient.Headers["Accept"] = "application/json";
  webClient.DownloadStringAsync(someUrl);
  </code></pre>
  
  <p>Using Fiddler to investigate the data on the pipes, the request has its header replaced:</p>
  
  <pre><code>GET /1/36497f32-1acd-4f4e-a946-622b3f20dfa5/Content/GetAllTextContentsForUser/0 HTTP/1.1
  Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
  Host: localhost:88
  User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8
  </code></pre>
  
  <p>Notice the 2nd line, "Accept" -- it's been replaced with text/html, xml, and other formats. Not what I'm looking for -- I absolutely need JSON coming back.</p>
  
  <p><strong>Is there a way to prevent Firefox from modifying my Accept header?</strong></p>