AutoIt
;~ $sData = '[{"deviceId":"an-id-with-seperators","firmwareId":"an-id-with-seperators"}]'
$sData = '[{"deviceId":"' & $DeviceID & '","firmwareId":"' & $firmwareID & '"}]'
Das obere wäre copy&paste aus der API Doku nachdem man den Test-Part hat laufen lassen.
AutoIt
Func SendRequest($Target, $RequestType, $Request, $OptionalData = $WINHTTP_NO_REQUEST_DATA)
Local $Response, $Data, $aArray, $Final, $Return, $ContentLength, $LastResponse
Local $hOpen = _WinHttpOpen()
; curl -X 'POST' \
: 'https://url/' \
Local $hConnect = _WinHttpConnect($hOpen, $Target)
_WinHttpOpenRequest($hConnect, 'POST', $Request)
; -H 'accept: application/json' \
_WinHttpAddRequestHeaders($hRequest, 'accept: application/json' & @CRLF)
; -H 'Authorization: Basic base64encryptedlogindata' \
_WinHttpAddRequestHeaders($hRequest, 'Authorization: Basic ' & base64($sUserName & ':' & $sPassword & ':somethingrequired', True, True) & @CRLF)
; -H 'Content-Type: application/json' \
_WinHttpAddRequestHeaders($hRequest, 'Content-Type: application/json' & @CRLF)
; -d '[{"deviceId":"an-id-with-seperators","firmwareId":"an-id-with-seperators"}]'
_WinHttpSendRequest($hRequest, Default, $OptionalData)
;...
EndFunc
Alles anzeigen
Und wie gesagt sämtliche Abfragen, die keine optionalen Daten benötigen, funktionieren einwandfrei.