Google Code предлагается на следующих языках: English – Español – 日本語 – 한국어 – Português – Pусский – 中文(简体) – 中文(繁體)
Приложения App Engine могут отправлять электронные сообщения от имени администраторов приложения и пользователей аккаунтов Google. Для отправки сообщений приложения могут использовать службу Mail.
API Java для службы Mail поддерживает интерфейс JavaMail (javax.mail) для отправки сообщений по электронной почте.
При создании сессии JavaMail не требуется указание конфигурации SMTP-сервера. Для отправки сообщений по электронной почте App Engine всегда использует службу Mail.
import java.util.Properties;
import javax.mail.AddressException;
import javax.mail.InternetAddress;
import javax.mail.MessagingException;
import javax.mail.MimeMessage;
import javax.mail.Message;
import javax.mail.Session;
import javax.mail.Transport;
// ...
Properties props = new Properties();
Session session = Session.getDefaultInstance(props, null);
String msgBody = "...";
try {
Message msg = new MimeMessage(session);
msg.setFrom(new InternetAddress("admin@example.com"));
msg.addRecipient(Message.RecipientType.TO,
new InternetAddress("user@example.com", "Mr. User"));
msg.setSubject("Your Example.com account has been activated");
msg.setText(msgBody);
Transport.send(msg);
} catch (AddressException e) {
// ...
} catch (MessagingException e) {
// ...
}
Служба Mail может отправлять электронные сообщения одному или нескольким получателям. Сообщение должно содержать тему и текст, а также может включать в себя дополнительное HTML-содержание. Кроме того, к нему можно прикреплять файловые вложения.
В целях безопасности адрес отправителя сообщения должен быть адресом электронной почты администратора приложения или адресом аккаунта Google текущего пользователя, выполнившего вход. Адрес электронной почты может включать ответный адрес, который должен удовлетворять ряду ограничений.
Чтобы отправить электронное сообщение от имени приложения, но при этом не использовать в качестве отправителя персональный аккаунт Google администратора, создайте новый аккаунт Google для приложения, используя любой действительный адрес электронной почты, а затем добавьте его в качестве администратора приложения. Добавить аккаунт в качестве администратора можно в разделе "Разработчики" Консоли администрирования.
В качестве получателей можно указывать любые адреса электронной почты. Получателя сообщения можно указать в поле "Кому" или "Копия" или скрыть из его заголовка ("слепая копия" или "СК").
Сообщение может содержать файловые вложения.
У вложения есть название и данные. Файловые данные могут быть из любого источника, например из файла данных приложения или из хранилища данных. Тип MIME приложения определяется по названию файла.
В целях безопасности файл, вложенный в электронное сообщение, должен иметь допустимый тип, а его название должно заканчиваться соответствующим типу расширением.
Ниже представлен список типов MIME и соответствующих расширений файлов, допустимых для файловых вложений в электронные сообщения.
| Тип MIME | Расширения файлов | |
|---|---|---|
| image/x-ms-bmp | bmp | |
| text/css | css | |
| text/comma-separated-values | csv | |
| image/gif | gif | |
| text/html | htm html | |
| image/jpeg | jpeg jpg jpe | |
| application/pdf | ||
| image/png | png | |
| application/rss+xml | rss | |
| text/plain | text txt asc diff pot | |
| image/tiff | tiff tif | |
| image/vnd.wap.wbmp | wbmp | |
| text/calendar | ics | |
| text/x-vcard | vcf |
При вызове службы Mail для отправки сообщения оно ставится в очередь, и немедленно осуществляется вызов. Служба Mail использует стандартные процедуры для обращения к почтовому серверу получателя, доставки сообщений и повторных попыток в случаях, когда не удается установить связь.
Если эта служба не может доставить сообщение или оно возвращается с почтового сервера получателя (например, если для этого адреса нет аккаунта в системе), на адрес отправителя отправляется сообщение об ошибке. Приложение не получает уведомление о том, доставлено ли сообщение.
При вызове службы Mail приложением, которое выполняется на сервере разработки, для отправки электронного сообщения, оно записывается в журнал. Сервер разработки Java не поддерживает отправку сообщений по электронной почте.
Каждый запрос к службе Mail учитывается относительно квоты вызовов API Mail.
Каждый адрес получателя электронного сообщения учитывается относительно квоты получателей, которым отправлены сообщения (регулируется). Каждый получатель электронного сообщения, являющийся администратором, учитывается относительно квоты администраторов, которым отправлены сообщения.
Данные, отправленные в теле электронного сообщения, учитываются относительно следующих квот:
Каждое вложение в электронное сообщение учитывается относительно квоты отправленных вложений.
Данные, отправленные во вложении электронного сообщения, учитываются относительно следующих квот:
Подробнее о квотах рассказано в разделе Квоты и в разделе Консоли администрирования "Сведения о квотах".
Помимо квот, к использованию службы Mail применяются следующие ограничения:
| Ограничение | Величина |
|---|---|
| Максимальный размер сообщения, включая вложения | 1 мегабайт |
| Максимальный размер сообщения получателю, являющемуся администратором | 16 килобайт |