diff --git a/parsemail.go b/parsemail.go index 6a60192..3b742c4 100644 --- a/parsemail.go +++ b/parsemail.go @@ -171,7 +171,11 @@ func parseMultipartAlternative(msg io.Reader, boundary string) (textBody, htmlBo return textBody, htmlBody, embeddedFiles, err } - contentType, params, err := mime.ParseMediaType(part.Header.Get("Content-Type")) + var contentTypeHeader = part.Header.Get("Content-Type") + if len(contentTypeHeader) == 0 { + contentTypeHeader = contentTypeTextPlain + } + contentType, params, err := mime.ParseMediaType(contentTypeHeader) if err != nil { return textBody, htmlBody, embeddedFiles, err } @@ -490,4 +494,4 @@ type Email struct { Attachments []Attachment EmbeddedFiles []EmbeddedFile -} \ No newline at end of file +} diff --git a/parsemail_test.go b/parsemail_test.go index 109e734..22998cf 100644 --- a/parsemail_test.go +++ b/parsemail_test.go @@ -897,6 +897,8 @@ Content-Type: multipart/related; boundary="000000000000ab2e2205a26de587" --000000000000ab2e2205a26de587 Content-Type: multipart/alternative; boundary="000000000000ab2e1f05a26de586" +--000000000000ab2e1f05a26de586 + --000000000000ab2e1f05a26de586 Content-Type: text/plain; charset="UTF-8"