Sample code for 30+ languages & platforms
Java

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 Java Downloads

Java
import com.chilkatsoft.*;

public class ChilkatExample {

  static {
    try {
        System.loadLibrary("chilkat");
    } catch (UnsatisfiedLinkError e) {
      System.err.println("Native code library failed to load.\n" + e);
      System.exit(1);
    }
  }

  public static void main(String argv[])
  {
    boolean success = false;

    success = false;

    CkRest rest = new CkRest();

    // Connect using TLS.
    boolean bAutoReconnect = true;
    success = rest.Connect("chilkatsoft.com",443,true,bAutoReconnect);

    // Load JSON containing the following Korean text.

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

    CkJsonObject json = new CkJsonObject();
    json.put_EmitCompact(false);
    success = json.LoadFile("qa_data/json/korean.json");
    if (success == false) {
        System.out.println(json.lastErrorText());
        return;
        }

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

    CkStringBuilder sb = new CkStringBuilder();
    json.EmitSb(sb);
    sb.Encode("unicodeescape","utf-8");

    System.out.println(sb.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"
    //   }
    // }

    CkStringBuilder sbResp = new CkStringBuilder();
    success = rest.FullRequestSb("POST","/echo_request_body.asp",sb,sbResp);
    if (success == false) {
        System.out.println(rest.lastErrorText());
        return;
        }

    // Show the response. 
    System.out.println("Json Response: " + sbResp.getAsString());
  }
}