Popular Post FaridAgl Posted January 21, 2013 Popular Post Posted January 21, 2013 (edited) WinHttp.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) EndFuncExample 1:#include "WinHttp.au3" Global $MD5 = HttpPost("http://www.afk-manager.ir/test/post.php", "password=WeWantThisAsMd5") MsgBox(64, "MD5", $MD5)Example 2:#include "WinHttp.au3" Global $sGet = HttpGet("http://www.google.com/") FileWrite("Google.txt", $sGet)Speed compare:expandcollapse popup[WinHttp.WinHttpRequest.5.1 GET] 1 = 422.961162765649 2 = 455.738280639636 3 = 441.821516504421 4 = 390.538648365335 Total = 1711.059608275041 Average = 427.7649020687603 [WinHttp.WinHttpRequest.5.1 POST] 1 = 826.436200956633 2 = 872.366642546045 3 = 871.266802895081 4 = 875.792832686324 Total = 3445.862479084083 Average = 861.4656197710208 [HTTP UDF GET] 1 = 984.282912132673 2 = 813.896511915435 3 = 781.158836566862 4 = 791.901235916364 Total = 3371.239496531334 Average = 842.8098741328335 [HTTP UDF POST] 1 = 788.734835486743 2 = 975.688234142967 3 = 785.810779035388 4 = 847.537193542955 Total = 3397.771042208053 Average = 849.4427605520133 [InetRead GET] 1 = 672.120733570292 2 = 595.221462195098 3 = 561.122261209642 4 = 738.180516302658 Total = 2566.64497327769 Average = 641.6612433194225Tests result:Server 2003 32bit OK Server 2003 64bit Not Tested Server 2008 32bit Not Tested Server 2008 64bit OK XP 32bit OK XP 64bit Not Tested Vista 32bit Not Tested Vista 64bit Not Tested 7 32bit OK 7 64bit OK 8 32bit OK 8 64bit OKAre you interested? Check this out:http://msdn.microsoft.com/en-us/library/windows/desktop/aa384106(v=vs.85).aspx Edited January 21, 2013 by D4RKON3 PoojaKrishna, Sodori, EmilyLove and 8 others 11 http://faridaghili.ir
FaridAgl Posted January 21, 2013 Author Posted January 21, 2013 Updated, Now the $sData parameter is optional. http://faridaghili.ir
FaridAgl Posted January 21, 2013 Author Posted January 21, 2013 First post updated with some extra info. http://faridaghili.ir
guinness Posted January 21, 2013 Posted January 21, 2013 Interesting comparison. Thanks. UDF List: _AdapterConnections() • _AlwaysRun() • _AppMon() • _AppMonEx() • _ArrayFilter/_ArrayReduce • _BinaryBin() • _CheckMsgBox() • _CmdLineRaw() • _ContextMenu() • _ConvertLHWebColor()/_ConvertSHWebColor() • _DesktopDimensions() • _DisplayPassword() • _DotNet_Load()/_DotNet_Unload() • _Fibonacci() • _FileCompare() • _FileCompareContents() • _FileNameByHandle() • _FilePrefix/SRE() • _FindInFile() • _GetBackgroundColor()/_SetBackgroundColor() • _GetConrolID() • _GetCtrlClass() • _GetDirectoryFormat() • _GetDriveMediaType() • _GetFilename()/_GetFilenameExt() • _GetHardwareID() • _GetIP() • _GetIP_Country() • _GetOSLanguage() • _GetSavedSource() • _GetStringSize() • _GetSystemPaths() • _GetURLImage() • _GIFImage() • _GoogleWeather() • _GUICtrlCreateGroup() • _GUICtrlListBox_CreateArray() • _GUICtrlListView_CreateArray() • _GUICtrlListView_SaveCSV() • _GUICtrlListView_SaveHTML() • _GUICtrlListView_SaveTxt() • _GUICtrlListView_SaveXML() • _GUICtrlMenu_Recent() • _GUICtrlMenu_SetItemImage() • _GUICtrlTreeView_CreateArray() • _GUIDisable() • _GUIImageList_SetIconFromHandle() • _GUIRegisterMsg() • _GUISetIcon() • _Icon_Clear()/_Icon_Set() • _IdleTime() • _InetGet() • _InetGetGUI() • _InetGetProgress() • _IPDetails() • _IsFileOlder() • _IsGUID() • _IsHex() • _IsPalindrome() • _IsRegKey() • _IsStringRegExp() • _IsSystemDrive() • _IsUPX() • _IsValidType() • _IsWebColor() • _Language() • _Log() • _MicrosoftInternetConnectivity() • _MSDNDataType() • _PathFull/GetRelative/Split() • _PathSplitEx() • _PrintFromArray() • _ProgressSetMarquee() • _ReDim() • _RockPaperScissors()/_RockPaperScissorsLizardSpock() • _ScrollingCredits • _SelfDelete() • _SelfRename() • _SelfUpdate() • _SendTo() • _ShellAll() • _ShellFile() • _ShellFolder() • _SingletonHWID() • _SingletonPID() • _Startup() • _StringCompact() • _StringIsValid() • _StringRegExpMetaCharacters() • _StringReplaceWholeWord() • _StringStripChars() • _Temperature() • _TrialPeriod() • _UKToUSDate()/_USToUKDate() • _WinAPI_Create_CTL_CODE() • _WinAPI_CreateGUID() • _WMIDateStringToDate()/_DateToWMIDateString() • Au3 script parsing • AutoIt Search • AutoIt3 Portable • AutoIt3WrapperToPragma • AutoItWinGetTitle()/AutoItWinSetTitle() • Coding • DirToHTML5 • FileInstallr • FileReadLastChars() • GeoIP database • GUI - Only Close Button • GUI Examples • GUICtrlDeleteImage() • GUICtrlGetBkColor() • GUICtrlGetStyle() • GUIEvents • GUIGetBkColor() • Int_Parse() & Int_TryParse() • IsISBN() • LockFile() • Mapping CtrlIDs • OOP in AutoIt • ParseHeadersToSciTE() • PasswordValid • PasteBin • Posts Per Day • PreExpand • Protect Globals • Queue() • Resource Update • ResourcesEx • SciTE Jump • Settings INI • SHELLHOOK • Shunting-Yard • Signature Creator • Stack() • Stopwatch() • StringAddLF()/StringStripLF() • StringEOLToCRLF() • VSCROLL • WM_COPYDATA • More Examples... Updated: 22/04/2018
Fire Posted February 12, 2013 Posted February 12, 2013 Thank you very much dude.Very nice;) [size="5"] [/size]
FaridAgl Posted February 13, 2013 Author Posted February 13, 2013 Your welcome my friend. http://faridaghili.ir
FaridAgl Posted September 24, 2013 Author Posted September 24, 2013 Your welcome http://faridaghili.ir
VAN0 Posted January 3, 2014 Posted January 3, 2014 (edited) Thank you very much! very useful. Is there a way capture redirects? It seems right now it captures the finished document, all 302 responses are being followed and $oHTTP.status is always returns 200 (or error) Thank you. [EDIT] Found it: $oHTTP.Option(6) = false Edited January 3, 2014 by VAN0
Zedna Posted January 5, 2014 Posted January 5, 2014 To me it seems simple alternative to use $oXmlHttp = ObjCreate("Microsoft.XMLHTTP") $oXmlHttp.Open($type, $url, False) $oXmlHttp.Send() Return $oXmlHttp.ResponseText as seen in my example: '?do=embed' frameborder='0' data-embedContent>> mLipok 1 Resources UDF ResourcesEx UDF AutoIt Forum Search
Sodori Posted December 9, 2014 Posted December 9, 2014 Dunno if Zedna did a shorter version of it since my brain can't deal with much more codes tonight. Regardless, your worked @FaridAgl. So you get the creds
TayganDB Posted September 23, 2015 Posted September 23, 2015 First post on the forums Thanks so much for this! Made my day a lot easier!I'm using the HttpGet function in a GUI and if the page is not available my GUI starts freezing up so I added in $oHTTP.SetTimeouts to help with error handling.Func HttpGet($sURL, $sData = "") Local $oHTTP = ObjCreate("WinHttp.WinHttpRequest.5.1") $oHTTP.Open("GET", $sURL & "?" & $sData, False) $oHTTP.SetTimeouts(50, 50, 50, 50) If (@error) Then Return SetError(1, 0, 0) $oHTTP.Send() If (@error) Then Return SetError(2, 0, 0) If ($oHTTP.Status <> 200) Then Return SetError(3, 0, 0) Return SetError(0, 0, $oHTTP.ResponseText) EndFunc ;==>HttpGet The values are for ResolveTimeout, ConnectTimeout, SendTimeout, ReceiveTimeout. I've set to 50ms because I'm working with a LAN connection and my requests are tiny. Zedna and GreeNerO 1 1
Fierro Posted March 30, 2016 Posted March 30, 2016 My very 1st post is a question: When $sData is a "st" value witch is this syntax ? And How to calculate the mt parameter in a PHP request? And it's necessary? Thanks for any answer.
DeepikaManhas Posted June 1, 2022 Posted June 1, 2022 hi , I need your help , I want to know how to hit twitter API in autoit for Post Retweet a tweet . As I am new in this field I am not able to understand. $oHTTP = ObjCreate("winhttp.winhttprequest.5.1") $oHTTP.Open("GET", "https://api.twitter.com/2/users/1531500716577419264/retweets", False) $oHTTP.Send() Local $arr[7] = ["OAuth oauth_consumer_key=pnIMwqNZnB0ACYfFrlBikJNkE","oauth_token=1531500716577419264-8LQ2pzEdZORqBn1MIqXEZeNlthObbo","oauth_signature_method=HMAC-SHA1","oauth_timestamp=1654067601","oauth_nonce=tK85msdw4G1","oauth_version=1.0","oauth_signature=33KsURODsy9gUi5xFa%2FsM2Ac8vo%3D"] For $i = 0 to 7 - 1 ; ConsoleWrite($arr[$i] & @LF) Next $tweet_id=FileRead( "1531198564613124096") Global $ObjLevel = -1 Global $object = Json_Decode($tweet_id) Json_Dump($tweet_id) $oHTTP.Send($tweet_id) $oReceived = $oHTTP.ResponseText $oStatusCode = $oHTTP.Status If $oStatusCode <> 200 then MsgBox(0, "Response code", $oStatusCode) EndIf $file = FileOpen("", 2) ; FileWrite($file, $oReceived) FileClose($file)
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now