Sample code for 30+ languages & platforms
Lua

Caching cookies in-memory.

See more HTTP Examples

Caching cookies in-memory. To automatically save cookies to an in-memory cache, set the CookieDir property equal to the keyword "memory". Also, set the SaveCookies property = _TRUE_. If the SendCookies property = _TRUE_, then any cached cookies are automatically re-sent with subsequent GETs and POSTs.

Chilkat Lua Downloads

Lua
local chilkat = require("chilkat")

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

local http = chilkat.Http.new()

-- To save cookies to an in-memory cache, set the
-- CookieDir equal to "memory".  Also,
-- set the SaveCookies property:
http.cookie_dir = "memory"
http.save_cookies = true

-- To cause cached cookies to be sent with
-- subsequent HTTP requests, set the SendCookies
-- property = true.
http.send_cookies = true

-- Any methods that do a GET, POST, etc. will save
-- cookies to the CookieDir (which in this case is an
-- in-memory cache.
local html = http:quick_get_str("https://www.paypal.com/")

-- To fetch the XML cookie(s) for a domain, call GetCookieXml:
local xmlStr = http:get_cookie_xml("paypal.com")

print(xmlStr)

-- It's content will look something like this:

-- <cookies>
--     <cookie key=".paypal.com,/" v="0" secure="yes">
--         <navcmd>_home-general</navcmd>
--         <HttpOnly />
--         <cwrClyrK4LoCV1fydGbAxiNL6iG>9cz...</cwrClyrK4LoCV1fydGbAxiNL6iG>
--     </cookie>
-- </cookies>

-- If another HTTP request is sent, the cookies should
-- be added:
html = http:quick_get_str("https://www.paypal.com/")

-- Check the LastHeader property to see the MIME header
-- of the last HTTP request sent.
-- The "Cookie" header field should be present.
print("--- LastHeader ---")
print(http.last_header)