Sample code for 30+ languages & platforms
Visual FoxPro 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 Visual FoxPro Downloads

Visual FoxPro
LOCAL lnSuccess
LOCAL loRest
LOCAL lnBAutoReconnect
LOCAL loJson
LOCAL loSb
LOCAL loSbResp

lnSuccess = 0

lnSuccess = 0

loRest = CreateObject('Chilkat.Rest')

*  Connect using TLS.
lnBAutoReconnect = 1
lnSuccess = loRest.Connect("chilkatsoft.com",443,1,lnBAutoReconnect)

*  Load JSON containing the following Korean text.

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

loJson = CreateObject('Chilkat.JsonObject')
loJson.EmitCompact = 0
lnSuccess = loJson.LoadFile("qa_data/json/korean.json")
IF (lnSuccess = 0) THEN
    ? loJson.LastErrorText
    RELEASE loRest
    RELEASE loJson
    CANCEL
ENDIF

lnSuccess = loRest.AddHeader("Content-Type","application/json; charset=UTF-8")

loSb = CreateObject('Chilkat.StringBuilder')
loJson.EmitSb(loSb)
loSb.Encode("unicodeescape","utf-8")

? loSb.GetAsString()

*  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"
*    }
*  }

loSbResp = CreateObject('Chilkat.StringBuilder')
lnSuccess = loRest.FullRequestSb("POST","/echo_request_body.asp",loSb,loSbResp)
IF (lnSuccess = 0) THEN
    ? loRest.LastErrorText
    RELEASE loRest
    RELEASE loJson
    RELEASE loSb
    RELEASE loSbResp
    CANCEL
ENDIF

*  Show the response. 
? "Json Response: " + loSbResp.GetAsString()

RELEASE loRest
RELEASE loJson
RELEASE loSb
RELEASE loSbResp