IdHTTp 组件能否不发送 Accept-Encoding 这个报头? 如题,能否办到? HTTPOptions := [];//这样不行! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 僵哥的意思是:IdHTTP1.Request.AcceptEncoding := '';//???这样用抓包工具还是会看到以下:Accept-Encoding: identity Accept-Encoding在HTTP协议当中是有必要的,否则服务器在应答的时候无法对客户端的支持做出判断。 换了ICS组件就没这个了,谢谢僵哥的回复! 修改 C:\Program Files\Indy 10 for Delphi 7\Source\Protocols\idHttp.pas屏蔽下面语句// if IndyPos('identity',Request.AcceptEncoding)=0 then {do not localize}// begin// Request.AcceptEncoding := Request.AcceptEncoding + 'identity'; {do not localize}// end;重新编译成 idHttp.dcu,再覆盖 C:\Program Files\Indy 10 for Delphi 7\LibD7\idHttp.dcu就可以了。Indy强制添加的,所以在自己的程序中是无法去掉的。 Accept-Encoding 不是必须的。这个头信息是告诉服务器,客户端支持何种压缩方式,若无此行,就是告诉服务器,客户端不支持压缩,请直接返回文本,别压缩。在java编程中,模仿浏览器提交了 Accept-Encoding: gzip,deflate,拿到的却是乱码,后来才发现服务器端设置了 gzip 压缩,拿到的是压缩后的数据,而客户端本身有没有解压功能。去掉 Accept-Encoding: gzip,deflate 后,拿到的就是完整的文本了。服务端自动根据 Accept-Encoding 选择压缩方式,如果没有Accept-Encoding: gzip,deflate,就直接传输文本。 读寄存器数据问题 急求解答!! 刚学delphi,在tpagecontrol容器中,怎样放置一个listview? 求一个字符串 组的排序算法,能用delphi写最好 SQL列求和问题 急,急,急--------100 BCB能使用delphi的组件吗? 如何使DBCtrlGrid不能编辑,请帮忙! mscomm和timmer控件结合问题,非常急!!!! Delphi!!!! Delphi and VB 在var声明中有absolute是什么意思 如何去除idhttp的identity头
IdHTTP1.Request.AcceptEncoding := '';//???这样用抓包工具还是会看到以下:
Accept-Encoding: identity
屏蔽下面语句
// if IndyPos('identity',Request.AcceptEncoding)=0 then {do not localize}
// begin
// Request.AcceptEncoding := Request.AcceptEncoding + 'identity'; {do not localize}
// end;
重新编译成 idHttp.dcu,再覆盖 C:\Program Files\Indy 10 for Delphi 7\LibD7\idHttp.dcu就可以了。Indy强制添加的,所以在自己的程序中是无法去掉的。
这个头信息是告诉服务器,客户端支持何种压缩方式,若无此行,就是告诉服务器,客户端不支持压缩,请直接返回文本,别压缩。在java编程中,模仿浏览器提交了 Accept-Encoding: gzip,deflate,拿到的却是乱码,后来才发现服务器端设置了 gzip 压缩,拿到的是压缩后的数据,而客户端本身有没有解压功能。
去掉 Accept-Encoding: gzip,deflate 后,拿到的就是完整的文本了。服务端自动根据 Accept-Encoding 选择压缩方式,如果没有Accept-Encoding: gzip,deflate,就直接传输文本。