想用AU3写使用HTTP协议发送POST,google后在autoit的论坛找到了不错的方法。
有人说用xmlhttp,调用ie,用winhttp等等,还是这个obj操作com的方法简单实用。autoit上的大神写了个库,他命名为WinHttp2.au3。
库:
- #include-once
- Global Const $HTTP_STATUS_OK = 200
- Func HttpPost($sURL, $sData = "")
- Local $oHTTP = ObjCreate("WinHttp.WinHttpRequest.5.1")
- $oHTTP.Open("POST", $sURL, False)
- If (@error) Then Return SetError(1, 0, 0)
- $oHTTP.SetRequestHeader("Content-Type", "application/x-www-form-urlencoded")
- $oHTTP.Send($sData)
- If (@error) Then Return SetError(2, 0, 0)
- If ($oHTTP.Status <> $HTTP_STATUS_OK) Then Return SetError(3, 0, 0)
- Return SetError(0, 0, $oHTTP.ResponseText)
- EndFunc
- Func HttpGet($sURL, $sData = "")
- Local $oHTTP = ObjCreate("WinHttp.WinHttpRequest.5.1")
- $oHTTP.Open("GET", $sURL & "?" & $sData, False)
- If (@error) Then Return SetError(1, 0, 0)
- $oHTTP.Send()
- If (@error) Then Return SetError(2, 0, 0)
- If ($oHTTP.Status <> $HTTP_STATUS_OK) Then Return SetError(3, 0, 0)
- Return SetError(0, 0, $oHTTP.ResponseText)
- EndFunc
POST方法:
- #include "WinHttp2.au3"
- Global $MD5 = HttpPost("http://www.afk-manager.ir/test/post.php", "password=WeWantThisAsMd5")
- MsgBox(64, "MD5", $MD5)
GET方法:
- #include "WinHttp.au3"
- Global $sGet = HttpGet("http://www.google.com/")
- FileWrite("Google.txt", $sGet)
更多相关文章
版权声明:文章图片资源来源于网络,如有侵权,请留言删除!!!
评论