Sample code for 30+ languages & platforms
AutoIt

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)