Có hai cách để gửi email bằng API Gmail:
- Bạn có thể gửi trực tiếp bằng phương thức
messages.send
. - Bạn có thể gửi từ thư nháp bằng cách sử dụng phương thức
drafts.send
.
Email được gửi dưới dạng các chuỗi mã hoá base64url trong thuộc tính raw
của tài nguyên thông báo. Quy trình gửi email cấp cao là:
- Tạo nội dung email theo một cách thuận tiện và mã hoá nội dung đó dưới dạng chuỗi base64url.
- Tạo một tài nguyên thông báo mới và đặt thuộc tính
raw
của tài nguyên đó thành chuỗi base64url mà bạn vừa tạo. - Gọi
messages.send
hoặc nếu gửi thư nháp,drafts.send
để gửi tin nhắn.
Các thông tin chi tiết của quy trình công việc này có thể thay đổi tuỳ thuộc vào thư viện ứng dụng và ngôn ngữ lập trình mà bạn chọn.
Tạo thông báo
API Gmail yêu cầu thư email MIME tuân thủ RFC 2822 và được mã hoá dưới dạng chuỗi base64url. Nhiều ngôn ngữ lập trình có các thư viện hoặc tiện ích giúp đơn giản hoá quá trình tạo và mã hoá thông báo MIME. Các ví dụ về mã sau đây minh hoạ cách tạo thông báo MIME bằng thư viện ứng dụng API của Google cho nhiều ngôn ngữ.
Java
Việc tạo email có thể được đơn giản hoá đáng kể với lớp MimeMessage
trong gói javax.mail.internet
. Ví dụ sau đây cho biết cách tạo email, bao gồm cả tiêu đề:
Bước tiếp theo là mã hoá MimeMessage
, tạo thực thể cho đối tượng Message
và đặt chuỗi thông báo đã mã hoá base64url làm giá trị của thuộc tính raw
.
Python
Mã mẫu sau đây minh hoạ cách tạo một thông báo MIME, mã hoá một chuỗi base64url và gán chuỗi đó cho trường raw
của tài nguyên Message
:
Tạo tin nhắn có tệp đính kèm
Việc tạo thông báo có tệp đính kèm cũng giống như tạo bất kỳ thông báo nào khác, nhưng quy trình tải tệp lên dưới dạng thông báo MIME nhiều phần phụ thuộc vào ngôn ngữ lập trình. Các ví dụ về mã sau đây minh hoạ các cách có thể thực hiện để tạo một thông báo MIME nhiều phần có tệp đính kèm.
Java
Ví dụ sau cho thấy cách tạo một thông báo MIME nhiều phần, các bước mã hoá và chỉ định giống như trên.
Python
Tương tự như ví dụ trước, ví dụ này cũng xử lý việc mã hoá thông báo thành base64url và gán thông báo đó cho trường raw
của tài nguyên Message
.
Gửi tin nhắn
Sau khi tạo thông báo, bạn có thể gửi thông báo bằng cách cung cấp thông báo đó trong nội dung yêu cầu của lệnh gọi đến messages.send
, như được minh hoạ trong các ví dụ sau.
Java
Python
Nếu bạn đang cố gửi một câu trả lời và muốn email đó thành chuỗi, hãy đảm bảo rằng:
- Tiêu đề
Subject
khớp với - Các tiêu đề
References
vàIn-Reply-To
tuân theo tiêu chuẩn RFC 2822.
Để biết thông tin về cách gửi thư từ thư nháp, hãy xem phần Tạo thư nháp.