Sample code for 30+ languages & platforms
Lua Requires Chilkat v11.0.0+

HTTP POST JSON (application/json)

See more HTTP Examples

Demonstrates how to send a JSON POST using the application/json content-type.

Chilkat Lua Downloads

Lua
local chilkat = require("chilkat")

-- This example requires the Chilkat API to have been previously unlocked.
-- See Global Unlock Sample for sample code.

local req = chilkat.HttpRequest.new()
local http = chilkat.Http.new()

-- If any custom headers need to be included with the POST, add them
-- by calling SetRequestHeader

-- Note: An application should never explicitly set the Content-Length header.
-- The Content-Length is automatically computed and added by Chilkat.

-- Here are some examples of custom headers.

-- Perhaps your particular app needs some sort of custom-computed Authorization header...
http:set_request_header("Authorization", "my-custom-computed-auth-value")

-- Another custom header for some hypothetical app:
http:set_request_header("X-Pass-Timestamp", "my-custom-computed-timestamp-value")

-- The following "Accept" header may be set, but it really isn't necessary:
http:set_request_header("Accept", "application/json")

local jsonText = "{ some JSON text ... }"

-- To use SSL/TLS, simply use "https://" in the URL.

local resp = chilkat.HttpResponse.new()
local success = http:http_str("POST", "http://www.someserver.com/someJsonEndpoint", jsonText, "utf-8", "application/json", resp)
if not success then
    print(http.last_error_text)
    return
end

-- Display the JSON response.
print(resp.body_str)