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

Example: Email.GetDsnInfo method

See more Email Object Examples

Demonstrates how to call the GetDsnInfo method.

Chilkat Go Downloads

Go
    success := false

    email := chilkat.NewEmail()

    success = email.LoadEml("qa_data/eml/sample_multipart_report.eml")
    if success == false {
        fmt.Println(email.LastErrorText())
        email.DisposeEmail()
        return
    }

    json := chilkat.NewJsonObject()
    success = email.GetDsnInfo(json)
    if success == false {
        fmt.Println(email.LastErrorText())
        email.DisposeEmail()
        json.DisposeJsonObject()
        return
    }

    json.SetEmitCompact(false)
    fmt.Println(*json.Emit())

    //  Sample output:

    //  {
    //    "reporting-mta": "dns; Exchange2016.example.com",
    //    "final-recipient": [
    //      "herb.butterworth1247692846@gmail.com"
    //    ],
    //    "action": "failed",
    //    "status": "5.1.1",
    //    "remote-mta": "dns; mx.google.com",
    //    "x-supplementary-info": "<mx.google.com #5.1.1 smtp;550-5.1.1 The email account that you tried to reach does not exist. Please try 550-5.1.1 double-checking the recipient's email address for typos or 550-5.1.1 unnecessary spaces. Learn more at 550 5.1.1  https://support.google.com/mail/?p=NoSuchUser o8-20020a056870968800b001b55816bea9si2188132oaq.70 - gsmtp>",
    //    "x-display-name": "herb.butterworth1247692846@gmail.com"
    //  }

    //  Code for parsing the JSON:

    var strVal *string = new(string)

    reporting_mta := json.StringOf("reporting-mta")
    action := json.StringOf("action")
    status := json.StringOf("status")
    remote_mta := json.StringOf("remote-mta")
    x_supplementary_info := json.StringOf("x-supplementary-info")
    x_display_name := json.StringOf("x-display-name")
    i := 0
    count := json.SizeOfArray("final-recipient")
    for i < count {
        json.SetI(i)
        strVal = json.StringOf("final-recipient[i]")
        i = i + 1
    }


    email.DisposeEmail()
    json.DisposeJsonObject()