Sample code for 30+ languages & platforms
PureBasic

Get a Header Field from an Alternative Body

See more Email Object Examples

Demonstrates the Chilkat Email.GetAltHeaderField method, which returns the value of a header field within the Nth alternative body's MIME sub-part. The first argument is the zero-based alternative index; the second is the header field name. This example builds a message with plain-text and HTML alternatives and reads the Content-Type of the first alternative.

Background: A multipart/alternative message is a tree: each alternative body is its own MIME sub-part with its own little header block (Content-Type, Content-Transfer-Encoding, etc.). The top-level Email header methods read the message headers, whereas GetAltHeaderField reaches into a specific alternative's sub-part — useful for inspecting exactly how each representation is typed and encoded.

Chilkat PureBasic Downloads

PureBasic
IncludeFile "CkEmail.pb"

Procedure ChilkatExample()

    ;  Demonstrates the GetAltHeaderField method, which returns the value of a header field
    ;  within the Nth alternative body's MIME sub-part.  The 1st argument is the zero-based
    ;  alternative index; the 2nd is the header field name.

    email.i = CkEmail::ckCreate()
    If email.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    ;  Create an email with plain-text and HTML alternatives.
    CkEmail::ckSetTextBody(email,"This is the plain-text alternative.","text/plain")
    CkEmail::ckAddHtmlAlternativeBody(email,"<html><body>This is the HTML alternative.</body></html>")

    ;  Get the Content-Type header of the first alternative body (index 0).
    ct.s = CkEmail::ckGetAltHeaderField(email,0,"Content-Type")
    Debug "Alternative 0 Content-Type: " + ct


    CkEmail::ckDispose(email)


    ProcedureReturn
EndProcedure