Sample code for 30+ languages & platforms
AutoIt

HTTPS PUT application/x-www-form-urlencoded

See more HTTP Examples

Demonstrates two ways of sending an HTTPS PUT application/x-www-form-urlencoded request.

Chilkat AutoIt Downloads

AutoIt
Local $bSuccess = False

; This example assumes the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.

$oHttp = ObjCreate("Chilkat.Http")

; The 1st example sends a PUT with the query params in the URL.
; The body of the request will be empty.
Local $sUrl = "https://example.com/leads/12345678?uid=XXXX&apikey=YYYYYY&notes=Test_Note"

; Sends the following request:

; PUT /leads/12345678?uid=XXXX&apikey=YYYYYY&notes=Test_Note HTTP/1.1
; Host: example.com
; Accept: */*
; Accept-Encoding: gzip
; Content-Length: 0
; 

$oResp = ObjCreate("Chilkat.HttpResponse")
$bSuccess = $oHttp.HttpStr("PUT",$sUrl,"","","application/x-www-form-urlencoded",$oResp)
If ($bSuccess = False) Then
    ConsoleWrite($oHttp.LastErrorText & @CRLF)
    Exit
EndIf

ConsoleWrite("Response status code = " & $oResp.StatusCode & @CRLF)
ConsoleWrite("Response body: " & $oResp.BodyStr & @CRLF)

; -----------------------------------------------------------------------
; Now we send the same request, but instead the query params are in the HTTP request body.

$oReq = ObjCreate("Chilkat.HttpRequest")
$oReq.HttpVerb = "PUT"
$oReq.Path = "/leads/12345678"
$oReq.AddParam "uid","XXXX"
$oReq.AddParam "apikey","YYYYYY"
$oReq.AddParam "notes","Test_Note"

; Sends the following request:

; POST /leads/12345678 HTTP/1.1
; Host: example.com
; Content-Type: application/x-www-form-urlencoded
; Content-Length: 38
; 
; uid=XXXX&apikey=YYYYYY&notes=Test_Notereq.HttpVerb = "POST";
$oReq.HttpVerb = "POST"
$oReq.ContentType = "application/x-www-form-urlencoded"

$bSuccess = $oHttp.HttpReq("https://example.com/leads/12345678",$oReq,$oResp)
If ($bSuccess = False) Then
    ConsoleWrite($oHttp.LastErrorText & @CRLF)
    Exit
EndIf

ConsoleWrite("Response status code = " & $oResp.StatusCode & @CRLF)
ConsoleWrite("Response body: " & $oResp.BodyStr & @CRLF)