Sample code for 30+ languages & platforms
Lua

Create multipart/alternative MIME

See more MIME Examples

Demonstrates how to create a multipart/alternative MIME structure using the NewMultipartAlternative method.

Chilkat Lua Downloads

Lua
local chilkat = require("chilkat")

local success = false

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

-- Start with an empty MIME object...
local mime = chilkat.Mime.new()

-- Initialize it as multipart/alternative.
mime:new_multipart_alternative()

-- Create a text/plain part.
local ptMime = chilkat.Mime.new()
ptMime:set_body_from_plain_text("This is the plain text body.")
print(ptMime:get_mime())
print("****")

-- The text/plain part looks like this:

--     Content-Type: text/plain
--     Content-Transfer-Encoding: 7bit
--
--     This is the plain text body.

-- Create a text/HTML part.
local htmlMime = chilkat.Mime.new()
htmlMime:set_body_from_html("<html><body><p>This is the <b>HTML body</b></p></body></html>")
print(htmlMime:get_mime())
print("****")

-- The text/html part looks like this:

--     Content-Type: text/html
--     Content-Transfer-Encoding: 7bit
--
--     <html><body><p>This is the <b>HTML body</b></p></body></html>

-- Add both parts as children of the multipart/alternative
mime:append_part(ptMime)
mime:append_part(htmlMime)
print(mime:get_mime())

-- This the result.  The boundary string was automatically generaetd.

--     Content-Type: multipart/alternative; boundary="------------080803090906030708030908"
--
--     --------------080803090906030708030908
--     Content-Type: text/plain
--     Content-Transfer-Encoding: 7bit
--
--     This is the plain text body.
--     --------------080803090906030708030908
--     Content-Type: text/html
--     Content-Transfer-Encoding: 7bit
--
--     <html><body><p>This is the <b>HTML body</b></p></body></html>
--     --------------080803090906030708030908--