Twebbrowser的Referer怪问题(100)

  • 主题发起人 主题发起人 sunsland
  • 开始时间 开始时间
S

sunsland

Unregistered / Unconfirmed
GUEST, unregistred user!
使用Twebbrowser来模拟浏览器用户手动登陆,发现get时Referer在Herders中显示的位置不对,IE显示是:Referer: http://引用页面Accept-Language: zh-cnAccept-Encoding: gzip, deflateTwebbrowser显示为:Accept-Language: zh-cnReferer: http://引用页面Accept-Encoding: gzip, deflate设置:Headers := 'Referer: ' + Ref+#13#10+'Accept-Language: zh-cn'后Twebbrowser显示为:Accept-Encoding: gzip, deflateReferer: http://引用页面Accept-Language: zh-cn设置:Headers := 'Referer: ' + Ref+ +#13#10+'Accept-Language: zh-cn'+#13#10+'Accept-Encoding: gzip, deflate'后Twebbrowser显示为:Accept-Encoding: gzip, deflateReferer: http://引用页面Accept-Language: zh-cn调用:procedure NavRef(url,ref:string;wbWeb:Twebbrowser);varFlags, Headers, TargetFrameName, PostData: OLEVariant;beginFlags := '1';TargetFrameName := '';PostData := '';Headers := 'Referer: ' + Ref; // +#13#10+'Accept-Language: zh-cn' // +#13#10+'Accept-Encoding: gzip, deflate';wbWeb.Navigate(Url, Flags, TargetFrameName, PostData, Headers);end;如何设置能做到Referer与IE中提交是一样?
 
这个顺序有区别吗?
 
需要以及乱真,就是让别人分不出是程序还是人工提交的。
 
这不就是一样了吗?顺序是不分的,服务器不可能以这个顺序来判断你是不是IE,那就乱套了。实在不行,你直接调用IE不就得了?
 
模拟鼠标键盘调用IE是可以的,但是没有用Twebbrowser方便,刚才测试了一下EmbeddedWB也是这样的。服务器倒是不分,问题是要是今后真的查起来,就意味着软件提交的可能被区分出来。
 
不用模拟键盘,用API:ObjectFromLresult 直接获取IE中的Document,然后进行你要的操作,执行JavaScript,提交数据等等。Google一下,一大堆代码可以直接用了:http://www.tommstudio.com/bbs/reannounce.asp?boardid=3&rootid=29501&id=29584&reply=true
 
接受答案了.
 
后退
顶部