microsoft.xmlhttp 如何读取get回来的cookies值
想post登陆路由器,但必须先get得到其网页的cookies值,不知道用$oHTTP.Response的哪个参数能正确读取?以下为源代码$oHTTP = ObjCreate("microsoft.xmlhttp")
$oHTTP.Open('GET', 'http://192.168.0.1/admin/', False)
$oHTTP.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded')
$oHTTP.setRequestHeader("Host", "192.168.0.1")
$oHTTP.Send()
ConsoleWrite($oHTTP.ResponseBody & @CRLF);有值输出,不是这个
ConsoleWrite($oHTTP.ResponseText & @CRLF);有值输出,不是这个
ConsoleWrite($oHTTP.ResponseXML & @CRLF);无值输出
ConsoleWrite($oHTTP.ResponseStream & @CRLF);无值输出
利用以下代码是能正确读取的:
Local $Url = "http://192.168.0.1"
Local$oIE = _IECreate ($URL,0)
Local $Obj = _IEDocGetObj($oIE)
Local $Cookie = $Obj.cookie
MsgBox(0,0,$Cookie,3);能正确显示Cookie的值
哪位大侠知道啊?!!
Local $oHTTP = ObjCreate("WinHttp.WinHttpRequest.5.1")
后面用$oHttp.GetResponseHeader("Cookie")
即可获得Cookie,参考: http://msdn.microsoft.com/en-us/library/aa383975(v=vs.85) 回复 2# fpquenya
如果用 $oHTTP = ObjCreate("microsoft.xmlhttp"),就没有办法吗? 回复 3# ljxu
你的代码($oHTTP.GetResponseHeader("Cookie"))在我这一直出错?
$oHTTP.GetResponseHeader("Date")是正确的 回复 4# ljxu
路由器可以直接登录的啊
http://user:password@192.168.1.1
另外,可以试下这个:
#include <IE.au3>
Local $Url = "http://bbs.winos.cn"
Local $oIE = _IECreate ($URL,0)
Local $Obj = _IEDocGetObj($oIE)
Local $Cookie = $Obj.cookie
MsgBox(0,"Cookie",$Cookie)
;或者 Local $Cookie = $oIE.document.cookie
_IEQuit($oIE)
回复 5# fpquenya
有些路由器是不能直接登录的,比如说我这个
你的说的方法我试过,是可行的,但我想知道用$oHTTP.GetResponseHeader的方法,你知道吗? 回复 7# ljxu
我试了$oHTTP.GetResponseHeader("Cookie")也不行,$oHTTP.GetResponseHeader("Set-Cookie")是可以的,请高手帮忙看看吧 回复 7# ljxu
关于 XMLHTTP:获取完整HEADER, 它有个方法: getAllResponseHeaders
AU3语法: $oHTTP.getAllResponseHeaders()
获取单独HEADER, 须指明 HEADER '类型':
比如: $oHTTP.GetResponseHeader("Set-Cookie")
还有: $oHTTP.GetResponseHeader("Content-Type") 等等,
请获取完整HEADER并查看,就知道全部的HEADER有哪些了.
下面是一篇关于 XMLHTTP 对象及属性的非常好的中文解说
http://www.blueidea.com/tech/web/2008/5329.asp 回复 4# ljxu
xmlhttp 的 HEADER 中有 Date, 没有 Cookie, 只有 Set-Cookie !
这就是出错与正确的原因!
自己看吧, 下面是 度娘 的全部 HEADER, 注意每行 " : " 前面的单词.
Date: Wed, 04 Jul 2012 19:05:02 GMT
Server: BWS/1.0
Content-Type: text/html;charset=gbk
Cache-Control: private
Expires: Wed, 04 Jul 2012 19:05:02 GMT
Set-Cookie: BDRCVFR=aeXf-1x8UdYcs; path=/; domain=www.baidu.com
Connection: Keep-Alive 回复 8# fpquenya
谢谢你的帮助,问题解决了,方法在楼下。 回复 10# user3000
谢谢你的帮助,又学到了新的知识啊{:face (356):} 回复 9# user3000
学习了,多谢分享
页:
[1]