`

Accept-Encoding: gzip,deflate

    博客分类:
  • Java
阅读更多
前面一片Blog内容是说用程序模仿浏览器来请求页面。

之前在调试的时候,发现请求正常,但是请求结果是乱码。

尝试了好几种编码的方式,都解决不了。

问题出在我那段Cookie的参数上面了。一个个试,终于发现问题出现在这行上面:

getMethod.setRequestHeader("Accept-Encoding","gzip, deflate");

去掉这行,一切就正常了!

Google了一下,发现问题出在gzip上面。

下面是一个普通的HTTP请求信息:


为什么用浏览器可以正常浏览,而我用程序模仿就不行呢?

答案在这里:
引用
gzip是一种数据格式
默认且目前仅使用deflate算法压缩data部分,此法用于压缩传输
如果服务器支持Gzip,那么客户端必须要IE5.5以上!

数据返回给客户端时候已经被gzip压缩了,只是IE可以自动解压,而你的程序里面没有自动解压而已……

同样道理,你可以弄个解压算法来把乱码的数据解压,即可得到正常的HTML返回结果。
  • 大小: 10.3 KB
3
0
分享到:
评论

相关推荐

    Apache Flink CVE-2020-17518-id:L.pdf

    Accept-Encoding: gzip, deflate Accept: */* Accept-Language: en User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36 ...

    IIS上启用Gzip压缩(HTTP压缩)

    如果“Accept-Encoding”包含“gzip, deflate”,则表明浏览器支持Gzip和Deflate两种压缩方式。 2. **检查文件类型与压缩配置**:如果确认浏览器支持压缩,Web服务器会进一步检查请求文件的类型及其压缩配置。对于...

    常见请求和响应头-说明1

    3. Accept-Encoding:客户端通过这个字段告知服务器它能处理哪些数据压缩格式,如gzip或compress。例如,`Accept-Encoding: compress, gzip`。 4. Accept-Language:指定客户端期望的响应语言,例如`Accept-...

    常见请求和响应头-说明.doc

    3. Accept-Encoding:客户端告知服务器它支持的内容压缩编码类型,如gzip、compress。示例:Accept-Encoding: compress, gzip 4. Accept-Language:客户端可以接受的语言,如英语(en)或中文(zh)。示例:Accept-...

    常见请求和响应头-说明.docx

    3. Accept-Encoding: 指定浏览器可以支持的 web 服务器返回内容压缩编码类型,例如 Accept-Encoding: compress, gzip。 4. Accept-Language: 指定浏览器可接受的语言,例如 Accept-Language: en,zh。 5. Accept-...

    关于squid请求源服务器的响应中带Vary头1

    - Squid 不会区分客户端 "Accept-Encoding" 头的不同,无论客户端是否请求压缩(gzip 或 deflate),Squid 都会缓存一个对象,并且后续请求都将返回相同的对象。 - 如果第一个请求带有 "Accept-Encoding: gzip,...

    一个小小的封包教程,希望大家能喜欢!

    Accept-Encoding: gzip, deflate User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727) Host: bbs.wghai.com Connection: Keep-Alive Cache-Control: no-cache Cookie: ZC8_...

    WindowsMobile 实现简单断点续传(源码)

    Accept-Encoding: gzip, deflate User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.0.3705) Host: 192.168.3.120:8080 Connection: Keep-Alive HTTP/1.1 200 OK Server: Microsoft-IIS/...

    C#实现页面GZip或Deflate压缩的方法

    在`GzipDeflate`类的`Init`方法中,我们为`HttpApplication`对象的`BeginRequest`事件注册了一个事件处理器。当每次有新的HTTP请求到达时,这个事件会被触发。 在`app_BeginRequest`事件处理器中,我们首先检查...

    HTTP常见请求和响应头说明1

    3. Accept-Encoding: 客户端能解码的压缩格式,如compress、gzip或deflate。 4. Accept-Language: 客户端偏好语言,如en(英语)、zh(中文)。 5. Accept-Ranges: 客户端可接受的资源范围,通常用字节表示。 6. ...

    HTTP消息头详解.docx

    - 示例:`Accept-Encoding: gzip, deflate` 7. **Accept-Charset** - 指定客户端支持的字符编码集。 - 示例:`Accept-Charset: gb2312, utf-8;q=0.7, *;q=0.7` 8. **Content-Type** - 指示HTTP请求提交的数据...

    yxpjqrj.rar

    Accept-Encoding: gzip, deflate User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1) Host: entry.yeah.net Content-Length: 738 Connection: Keep-Alive Cache-Control: no-cache url=&username=...

    echo-http:回音http服务

    可以直接安装( go get github.com/umputun/echo-http )或作为多体系结构...gzip, deflate " , " Accept:*/* " , " Connection:keep-alive " , " User-Agent:HTTPie/2.4.0 " ], " host " : " 127.0.0.1:8080 " , " me

    nodejs-restful:一个 node.js 宁静服务器

    Accept-Encoding: gzip, deflate, compress Accept: application/json Content-Type: application/json; charset=utf-8 User-Agent: HTTPie/0.8.0 Content-Length: 133 {"grant_type": "password", "client_id": ...

    denmark-dawa:DAWA服务的简单接口API

    添加一个Accept-Encoding: gzip, deflate为数据压缩Accept-Encoding: gzip, deflate标题。 在网址中添加&ndjson=以获得流友好的界面并删除漂亮的打印内容。 检测错误并创建自定义错误对象( )。 将JSON解析为流...

    记一次BIGIP Configuration Utility渗透.pdf

    Accept-Encoding: gzip, deflate Accept: */* Connection: close Content-Type: application/x-www-form-urlencoded Content-Length: 168 {"bigipAuthCookie": "", "username": "admin", "loginReference": {...

    网页GZIP压缩检测例子-易语言

    在HTTP协议中,客户端可以通过设置`Accept-Encoding`头部来告知服务器它支持的压缩格式,如`gzip, deflate`等。服务器根据这个信息决定是否启用GZIP压缩。同样,服务器在响应中会通过`Content-Encoding`头部告知...

    HTTP 常见请求和响应头-说明

    3. Accept-Encoding:指定客户端可以解码的编码类型,如gzip、deflate等,用于数据压缩传输。 4. Accept-Language:指示客户端所期望的语言偏好,服务器据此返回相应语言的内容。 5. Authorization:当访问受保护...

    Gzip压缩.docx

    2. 服务器接收到请求后,检测到`Accept-Encoding`头,就会对响应内容进行gzip或deflate压缩。然后在HTTP响应头中设置`Content-Encoding: gzip`,告知客户端响应内容已被压缩。 3. 客户端接收到带有`Content-...

    Nodejs关于gzip deflate压缩详解.docx

    'accept-encoding': 'gzip,deflate' } }); request.on('response', function(response) { var output = fs.createWriteStream('izs.me_index.html'); switch (response.headers['content-encoding']) { case '...

Global site tag (gtag.js) - Google Analytics