Sample code for 30+ languages & platforms
Go

Example: Http.HttpJson method - Send a POST with JSON Body

See more HTTP Examples

Demonstrates how to call the HttpJson method, which sends an HTTP POST with a JSON body. This example sends the following request:
POST /echo_request_body.asp HTTP/1.1
Host: chilkatsoft.com
Accept: */*
Accept-Encoding: gzip
Content-Type: application/json
Content-Length: 26

{"greeting":"Hello World"}

Also see: Chilkat Http Default and Auto-Filled Headers

Chilkat Go Downloads

Go
    success := false

    http := chilkat.NewHttp()
    success = false

    json := chilkat.NewJsonObject()

    // Build the following JSON:  {"greeting":"Hello World"}
    json.UpdateString("greeting","Hello World")

    // This URL echoes the contents of the request body, letting us view it.
    url := "https://chilkatsoft.com/echo_request_body.asp"

    // Send a POST with the JSON in the HTTP request body.
    resp := chilkat.NewHttpResponse()
    success = http.HttpJson("POST",url,json,"application/json",resp)
    if success == false {
        fmt.Println(http.LastErrorText())
        http.DisposeHttp()
        json.DisposeJsonObject()
        resp.DisposeHttpResponse()
        return
    }

    fmt.Println("Response Status Code: ", resp.StatusCode())

    // Examine the request we sent.
    // The LastHeader property stores the HTTP request header of the most recent request sent,
    // and in this instance, the response body mirrors the request body.
    fmt.Println(http.LastHeader())
    fmt.Println(resp.BodyStr())

    // Output:

    // POST /echo_request_body.asp HTTP/1.1
    // Host: chilkatsoft.com
    // Accept: */*
    // Accept-Encoding: gzip
    // Content-Type: application/json
    // Content-Length: 26
    // 
    // {"greeting":"Hello World"}

    http.DisposeHttp()
    json.DisposeJsonObject()
    resp.DisposeHttpResponse()