Могу ли я отправлять электронную почту с помощью javascript

Можно ли отправлять электронные письма с помощью только javascript?

Ответ 1

Да. Использование Webservice. Вы можете позвонить в службу AJAX. EmailYak - одна из таких сервисов (теперь она находится в частной бета-версии).

EDIT: Это по-прежнему решение на стороне сервера, так как фактическое сообщение электронной почты отправляется с сервера. Вы просто общаетесь с сервером через AJAX и говорите ему, чтобы отправить электронное письмо.

Ответ 2

ОБНОВЛЕНИЕ: [ВНИМАНИЕ!] README:

Это сторонняя библиотека, которая подключается к внешнему серверу, позаботьтесь с информацией, которую вы отправляете.


Другое решение на JS вы можете использовать библиотеку с именем smtpjs

Добавьте в заголовок следующую библиотеку html:

<script src="https://smtpjs.com/smtp.js"></script>

Используйте это без защиты:

Email.send("[email protected]",
"[email protected]",
"This is a subject",
"this is the body",
"smtp.yourisp.com",
"username",
"password");

Используйте это с безопасностью:

Email.send("[email protected]",
"[email protected]",
"This is a subject",
"this is the body",
{token: "63cb3a19-2684-44fa-b76f-debf422d8b00"});

Ответ 3

На самом деле возможно и не так уж сложно построить SMTP-клиент в Javascript.

Но этому SMTP-клиенту все равно нужно будет общаться с SMTP-сервером для доставки электронной почты. И SMTP-серверы, открытые для всех, в наше время очень редки (потому что они быстро становятся каналами для спама, а затем блокируются и/или закрываются).

Однако, если человек, использующий клиент, может предоставить SMTP-сервер и учетные данные пользователя для него (как и для любого другого почтового клиента общего назначения), тогда да, вы можете отправлять электронные письма, используя только javascript.

Ответ 4

Обратите внимание, что smtpjs использует службу, расположенную в http://smtpjs. Это не действительно Javascript SMTP-клиент. Эта "утилита" означает, что вы загружаете свои учетные данные на сервер smtpjs.com. Используйте с особой осторожностью.

Ответ 5

Вы можете перенаправить на адрес mailto:[email protected][email protected]&subject=This%20is%20the%20subject&body=This%20is%20the%20body, который сообщает браузеру о запуске почтового клиента, который затем делает почту готовой к отправке - пользователю просто нужно нажать "отправить".

код:

document.location="mailto:[email protected][email protected]&"+
    "subject=This%20is%20the%20subject&body=This%20is%20the%20body";

Ответ 6

Если вы хотите отправить сообщение "тихо" из SMTP-процесса, это необходимо сделать на сервере или с помощью размещенной службы.

Если вы счастливы использовать собственную почтовую программу пользователя, вы можете использовать такой подход, как описанный в этом вопросе.