Отправка данных с формы на почту без бекенда

Отправка данных с формы на почту без бекенда


В интернете можно найти немало туториалов, где рассказывается как с помощью PHP можно отправить письмо. Также есть Nodemailer для Node.js, но ни PHP, ни Nodemailer мы рассматривать не будем.

Для отправки формы на почту есть сервис Formspree. Ничего не надо скачивать, всего лишь нужно включить ссылку на POST запрос на их сервер, и через слеш вписать свой почтовый адрес. Всё просто! Можно включать любые типы инпутов, будь то чекбокс или числовой ввод.

<form action="https://formspree.io/mail@inbox.com" method="post">
     Чекбокс:
     <input type="checkbox" name="checkbox" value="Чекбокс"/>
     <br/>
     Цифры:
     <input type="number" name="num" min="0"/>
     <br/>
     Текст:
     <input type="text" name="text" value="lorem ipsum"/>
     <button type="submit">Принять</button>
</form>

Также нужно захостить наш HTML файл, чтобы заголовки отправлялись правильно:

express = require('express');
app = express();
app.listen(3000)
app.get('/', (req,res) => {
 res.sendFile(__dirname + '/index.html')
})

После отправки формы нужно зайти на свою почту, чтобы подтвердить разрешение на отправку писем:

После подтверждения вылезет вот это:

Возвращаемся к localhost'у:

После ввода данных снова и активации капчи мы наконец-то получим письмо с данными:

Заходим на почту и видим:

Заключение

Статья получилась крошечной, зато не пришлось долго ждать. Потом можно будет сделать туториал по тому как сделать тоже самое с помощью Nodemailer.

Report Page