怎样获取ie的cookie给WinHttpRequest使用??
#include <ie.au3>$oHTTP = ObjCreate("WinHttp.WinHttpRequest.5.1")
$oHTTP.Option(4) = 13056 ;忽略错误标志
$oHTTP.Option(6) = True;是否接收重定向地址信息
$oHTTP.SetTimeouts(30000, 30000, 30000, 30000);超时时间设置
$oie = _IEAttach("www.autoitx.com", "URL")
ConsoleWrite($oie.document.cookie)
$oHTTP.Open('get', 'http://www.autoitx.com/memcp.php', False)
$oHTTP.setRequestHeader("Content-Type", 'application/x-www-form-urlencoded')
$oHTTP.setRequestHeader("Cookie", 'oie.document.cookie')
$oHTTP.send()
ConsoleWrite(BinaryToString($oHTTP.responseBody))
这样没成功,有大侠成功吗???相反把WinHttpRequest的cookie给ie使用,如何实现呢? 获取第一行cookie$cookie = $oHTTP.GetResponseHeader("Set-Cookie")如果有多行cookie$cookies = $oHTTP.getAllResponseHeaders
$sStr = '(?s)Set-Cookie:(.+?);'
$aCookie = StringRegExp($cookies, $sStr, 3)$aCookie是返回的数组 这个问题我也在研究!做个记录 获取第一行cookie如果有多行cookie$aCookie是返回的数组
seniors 发表于 2013-11-1 19:32 http://www.autoitx.com/images/common/back.gif
谢谢回复,但我意思不是想要$oHTTP的cookie..而是提取ie的cookie给$ohttp用。
比如说,我用ie登录论坛后,提取这个cookie给我程序WinHttp.WinHttpRequest.5.1使用,这样我就不用模拟登陆. $ohttp GET网址就会给你 cookie
然后你就一直用这个ookie就行了
完全应该抛弃ie
WinHttp.WinHttpRequest.5.1模拟比IE方便多了 $ohttp GET网址就会给你 cookie
然后你就一直用这个ookie就行了
完全应该抛弃ie
WinHttp.WinHttpRequest ...
seniors 发表于 2013-11-4 09:42 http://www.autoitx.com/images/common/back.gif
只想了解一下可行性,实际试验不成功。。。失败。。。。。 实用性看情况吧!! $oHTTP.setRequestHeader("Cookie", 'oie.document.cookie')
你的这句是错的
应该是
$cookie= oie.document.cookie
$oHTTP.setRequestHeader("Cookie", $cookie) $oHTTP.setRequestHeader("Cookie", 'oie.document.cookie')
你的这句是错的
应该是
$cookie= oie.docum ...
seniors 发表于 2013-11-4 11:20 http://www.autoitx.com/images/common/back.gif
是我笔误了,修改正确还是没用,我想原因是$oie.document.cookie根本获取不到session的cookie
windows 7 + ie8 是我笔误了,修改正确还是没用,我想原因是$oie.document.cookie根本获取不到session的cookie
windo ...
xzxnovice 发表于 2013-11-4 16:53 http://www.autoitx.com/images/common/back.gif
可能和ie8用了多标签页的缘故,你改成单标签,再试试 session丢失了
页:
[1]