2011-05-31 42 views
2

下面是一個例子網站爲什麼我在瀏覽器中獲取不同的反應比服務器

http://us.blizzard.com/store/browse.xml?f=c:5,c:33

當我檢查在Firefox它是響應支持application/xhtml

當我提出要求與下列頭

var request = (HttpWebRequest)WebRequest.Create(url); 
var cookieContainer = new CookieContainer(); 

request.CookieContainer = cookieContainer; 
request.UserAgent = @"Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5"; 
request.Method = "GET"; 
request.AllowAutoRedirect = true; 
request.Timeout = 15000; 

的響應是應用/ XML

0相同的URL服務器端

任何想法?

感謝

回答

4

嘗試包括Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8您的要求。

request.Accept = @"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"; 

編輯:

嘗試複製從Firefox的要求。

我想這(我用的鍍鉻+ Chrome瀏覽器開發工具來得到頭)

 request.CookieContainer = cookieContainer; 
     request.UserAgent = @"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/534.30 (KHTML, like Gecko) Chrome/12.0.742.68 Safari/534.30"; 
     request.Accept = @"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"; 
     request.Headers.Add("Accept-Encoding", "gzip,deflate,sdch"); 
     request.Headers.Add("Accept-Charset", "ISO-8859-1,utf-8;q=0.7,*;q=0.3"); 
     request.Headers.Add("Accept-Language", "en-US,en;q=0.8"); 

     request.Method = "GET"; 
     request.AllowAutoRedirect = true; 
     request.Timeout = 15000; 

和回來application/xhtml+xml

+0

試過了。不行。儘管謝謝! – 2011-05-31 23:02:51

+0

UserAgent是訣竅!謝謝 – 2011-05-31 23:40:25

相關問題