دو روش برای ارسال ایمیل با استفاده از Gmail API وجود دارد:
- شما میتوانید آن را مستقیماً با استفاده از متد
messages.sendارسال کنید. - میتوانید آن را از حالت پیشنویس، با استفاده از متد
drafts.sendارسال کنید.
ایمیلها به صورت رشتههای کدگذاری شده با base64url در داخل ویژگی raw از یک منبع پیام ارسال میشوند. گردش کار سطح بالا برای ارسال ایمیل به شرح زیر است:
- محتوای ایمیل را به روشی مناسب ایجاد کنید و آن را به عنوان یک رشته base64url کدگذاری کنید.
- یک منبع پیام جدید ایجاد کنید و ویژگی
rawآن را روی رشته base64url که اخیراً ایجاد کردهاید، تنظیم کنید. - برای ارسال پیام، تابع
messages.sendفراخوانی کنید، یا اگر در حال ارسال پیشنویس هستید،drafts.sendاستفاده کنید.
جزئیات این گردش کار میتواند بسته به انتخاب کتابخانه کلاینت و زبان برنامهنویسی شما متفاوت باشد.
ایجاد پیامها
API جیمیل به پیامهای ایمیل MIME مطابق با RFC 2822 و کدگذاری شده به صورت رشتههای base64url نیاز دارد. بسیاری از زبانهای برنامهنویسی کتابخانهها یا ابزارهایی دارند که فرآیند ایجاد و کدگذاری پیامهای MIME را ساده میکنند. نمونههای کد زیر نحوه ایجاد یک پیام MIME را با استفاده از کتابخانههای کلاینت APIهای گوگل برای زبانهای مختلف نشان میدهند.
جاوا
ایجاد یک پیام ایمیل میتواند با کلاس MimeMessage در پکیج javax.mail.internet بسیار ساده شود. مثال زیر نحوه ایجاد پیام ایمیل، شامل هدرها را نشان میدهد:
مرحله بعدی رمزگذاری MimeMessage ، نمونهسازی یک شیء Message و تنظیم رشته پیام رمزگذاری شده base64url به عنوان مقدار ویژگی raw است.
پایتون
نمونه کد زیر ایجاد یک پیام MIME، کدگذاری به یک رشته base64url و اختصاص آن به فیلد raw منبع Message را نشان میدهد:
ایجاد پیام با پیوست
ایجاد یک پیام با پیوست مانند ایجاد هر پیام دیگری است، اما فرآیند آپلود فایل به عنوان یک پیام MIME چند بخشی به زبان برنامه نویسی بستگی دارد. مثالهای کد زیر روشهای ممکن برای ایجاد یک پیام MIME چند بخشی با پیوست را نشان میدهند.
جاوا
مثال زیر نحوه ایجاد یک پیام MIME چند بخشی را نشان میدهد، مراحل کدگذاری و انتساب همانند موارد فوق است.
پایتون
مشابه مثال قبلی، این مثال نیز رمزگذاری پیام به base64url و اختصاص آن به فیلد raw از منبع Message را مدیریت میکند.
ارسال پیام
پس از ایجاد پیام، میتوانید آن را با ارائه آن در بدنه درخواست فراخوانی messages.send ، همانطور که در مثالهای زیر نشان داده شده است، ارسال کنید.
جاوا
پایتون
اگر میخواهید پاسخی ارسال کنید و میخواهید ایمیل به صورت رشتهای ارسال شود، مطمئن شوید که:
- سرتیترهای
Subjectمطابقت دارند - سربرگهای
ReferencesوIn-Reply-Toاز استاندارد RFC 2822 پیروی میکنند.
برای اطلاعات بیشتر در مورد ارسال پیام از پیشنویس، به ایجاد پیشنویسها مراجعه کنید.