通过HttpWebRequest请求ajax

时间:2011-01-04 23:24:51

标签: ajax encoding httpwebrequest httpwebresponse

我正在编写一个简单的应用程序,它将从网站下载一些数据,然后我可以将其用于任何目的。

以下是浏览器从Firebug复制的请求和响应。 当您输入http://x5.travian.com.sa/ajax.php?f=k7&x=18&y=-186&xx=12&yy=-192时 你会得到一个PHP文件有一些数据。 但是当我用HttpWebRequest发出请求时,我得到错误的数据(一些未知的字母)

任何人都可以帮助我吗?我是否需要做一些编码或什么?

响应

 1. Server  nginx
 2. Date    Tue, 04 Jan 2011 23:03:49 GMT
 3. Content-Type    application/json; charset=UTF-8
 4. Transfer-Encoding   chunked
 5. Connection  keep-alive
 6. X-Powered-By    PHP/5.2.8
 7. Expires Mon, 26 Jul 1997 05:00:00 GMT
 8. Last-Modified   Tue, 04 Jan 2011 23:03:49 GMT
 9. Cache-Control   no-store, no-cache, must-revalidate, post-check=0, pre-check=0
 10. Pragma no-cache
 11. Content-Encoding   gzip
 12. Vary   Accept-Encoding

请求

 1. Host    x5.travian.com.sa
 2. User-Agent  Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) 
 3. Gecko/20101203 Firefox/3.6.13
 4. Accept  text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
 5. Accept-Language en-us,en;q=0.5
 6. Accept-Encoding gzip,deflate
 7. Accept-Charset  ISO-8859-1,utf-8;q=0.7,*;q=0.7
 8. Keep-Alive  115
 9. Connection  keep-alive
 10. Cookie CAD=57878984%231292375897%230%230%23%230; T3E=%3DImYykTN2EzMmhjO5QTM2QDN2oDM1ITOyoDOxIjM4EDN5ITM6gjO4MDOxIWZyQWMipTZu9metl2ctl2c6MDNxADN6MDNxADNjMDNxADNjMDNxADN; orderby_b1=0; orderby_b=0; orderby2=0; orderby=0

3 个答案:

答案 0 :(得分:0)

我在unix上使用wget来访问该网站,然后我找回了一个包含阿拉伯字符的页面。根据响应头,页面被编码为UTF8。

如果您可以显示您正在使用的代码,我们可以提供反馈。也许你的代码中存在一个错误,就像你解释响应流一样。

答案 1 :(得分:0)

最后它解决了,响应是用gzib编码编码的,所以我只用gzibdecodestream解码它......

答案 2 :(得分:-2)

AJAX =>您可能需要一个Web浏览器来呈现Javascript。