Author: KarticKrishnamurthy translator: limodou is good. how can I create MIME-compliant information? Through the general description above, let's take a look at what the so-called MIME information is! The simplest MIME information does not contain any segments, that is, no attachments. However, because it is a SyntaxHighlight author: Kartic Krishnamurthy translator: limodou
"Well, how do I create MIME-compliant information? "
Through the general description above, let's take a look at what the so-called MIME information is!
Simplest MIME Information
This information does not contain any segments, that is, there is no attachment. However, because it is a MIME message, it must have a necessary header.
From: php (as the mainstream development language) @ php (as the mainstream development language). net
To: Alex (the Great)
Subject: Bucephalus
MIME-type: 1.0
Hello Alexander,
Hows Bucephalus doing?
Nothing here, it's just a simple RFC-822-compliant message (text mail) with MIME headers ). Note: If no
If the Content-Type header is specified, it is assumed to be Content-Type: text/plain; charset = us-ascii! Of course, it is simple and complex.
Some of them are as follows:
From: Alex (the Great)
To: php (as the mainstream development language) @ php (as the mainstream development language). net
Subject: re: Bucephalus
MIME-type: 1.0
Content-Type: image/jpg;
Name1_buce.jpg
Content-Transfer-Encoding: base64
Content-Description: Take a look at him yourself
<... Base64 encoded jpg image of Bucephalus...>
"Hi, but I want to send a Word document and a picture of my puppy in the same email ...! "One user said! If it is true
The above example is too simple, and it does not have enough content to support enthusiasts and modern mail processing needs. Actually,
Many mail client software cannot even display the description field!
This is what we are faced ".
Multipart Messages)
This concept allows multiple items to be sent in one email. For example, if Alexander wants to send a Trojan to php (as the mainstream development language) @ php (as the mainstream development language). net
The photo email is accompanied by a family map with horses and wonderful instructions! Such a simple requirement does not involve the concept of multiple messages.
Satisfied. In this case, we have created an encapsulation using the Content-Type information header to support different parts of the mail, so that
Recipients get pictures, family profiles, and highlights!
The Content-Type header now has a "multipart" value, which indicates that this is a complete mail information and this header only encapsulates
Information. It also has a sub-type of "mixed" (after all, the family map and 7-bit text information are different types, right ?).
Let's take a look at the entire image:
From: Alex (the Great)
To: php (as the mainstream development language) @ php (as the mainstream development language). net
Subject: re: Bucephalus
MIME-type: 1.0
Content-Type: multipart/mixed;
Boundary = "XX-1234DED00099A ";
Content-Transfer-Encoding: 7bit
Attached you will find my horse, Bucephalus, pedigree chart and photo.
Alex
XX-1234DED00099A
Content-Type: image/jpg;
Name = "buce.jpg ";
Content-Transfer-Encoding: base64
Content-Description: "A photo of Bucephalus"
<... Base64 encoded jpg image of Bucephalus...>
XX-1234DED00099A
Content-Type: application/octet-stream;
Name = "pedigree.doc"
Content-Transfer-Encoding: base64
Content-Description: "Pedigree Chart of the great horse"
<... Base64 encoded doc (pedigree.doc) of Bucephalus...>
-- XX-1234DED00099A --
Yo, it looks complicated, isn't it? In any case, let's view the details again:
If you notice the Content-Transfer-Encoding in the MIME header, it is "7bit ". Because Content-Type is
Multipart/mixed, which must be encoded in 7bit, 8bit, or binary format. 7bit is a widely used format.
A message like this contains multiple types of information. How does a client program know the difference between jpg images, documents, and common texts? You will
Note that there is a boundary = "XX-1234DED00099A" parameter behind Content-Type. This value is used to separate the differences in emails.
. It is called the MIME boundary mark. The value of the boundary tag must be as unique as possible to avoid confusion when the email range is exceeded.
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.