Sample code for 30+ languages & platforms
AutoIt Requires Chilkat v11.1.0+

POST JSON to REST API with non-us-ascii Chars Escaped

See more REST Examples

Demonstrates how to POST to a REST API with non-usascii chars within JSON Unicode escaped.

Chilkat AutoIt Downloads

AutoIt
Local $bSuccess = False

$bSuccess = False

$oRest = ObjCreate("Chilkat.Rest")

;  Connect using TLS.
Local $bAutoReconnect = True
$bSuccess = $oRest.Connect("chilkatsoft.com",443,True,$bAutoReconnect)

;  Load JSON containing the following Korean text.

;   {
;     "BillAddr": {
;        "Id": "239615",
;        "Line1": "류리하",
;        "Line2": "류리하류리하",
;        "City": "류리하류리하",
;        "Country": "US",
;        "CountrySubDivisionCode": "AK",
;        "PostalCode": "류리하"
;      }
;  }

$oJson = ObjCreate("Chilkat.JsonObject")
$oJson.EmitCompact = False
$bSuccess = $oJson.LoadFile("qa_data/json/korean.json")
If ($bSuccess = False) Then
    ConsoleWrite($oJson.LastErrorText & @CRLF)
    Exit
EndIf

$bSuccess = $oRest.AddHeader("Content-Type","application/json; charset=UTF-8")

$oSb = ObjCreate("Chilkat.StringBuilder")
$oJson.EmitSb($oSb)
$oSb.Encode("unicodeescape","utf-8")

ConsoleWrite($oSb.GetAsString() & @CRLF)

;  The StringBuilder contains this:

;  {
;    "BillAddr": {
;      "Id": "239615",
;      "Line1": "\ub958\ub9ac\ud558",
;      "Line2": "\ub958\ub9ac\ud558\ub958\ub9ac\ud558",
;      "City": "\ub958\ub9ac\ud558\ub958\ub9ac\ud558",
;      "Country": "US",
;      "CountrySubDivisionCode": "AK",
;      "PostalCode": "\ub958\ub9ac\ud558"
;    }
;  }

$oSbResp = ObjCreate("Chilkat.StringBuilder")
$bSuccess = $oRest.FullRequestSb("POST","/echo_request_body.asp",$oSb,$oSbResp)
If ($bSuccess = False) Then
    ConsoleWrite($oRest.LastErrorText & @CRLF)
    Exit
EndIf

;  Show the response. 
ConsoleWrite("Json Response: " & $oSbResp.GetAsString() & @CRLF)