Руководство
Контактная форма Astro (без бэкенда)
Astro по умолчанию рендерит в статический HTML, что значит: контактная форма Astro - это просто обычная HTML-форма с правильным атрибутом action. Вам не нужен серверный эндпоинт или интеграция Astro - вставьте сниппет в .astro-страницу и готово.
Сниппет
---
// src/pages/contact.astro
---
<form action="https://formhook.app/f/YOUR_API_KEY" method="POST">
<label>
Email
<input type="email" name="email" required />
</label>
<label>
Message
<textarea name="message" required></textarea>
</label>
<input type="text" name="_gotcha" tabindex="-1" autocomplete="off" hidden />
<input type="hidden" name="_redirect" value="/thanks" />
<button type="submit">Send</button>
</form>Как это работает
Поскольку Astro по умолчанию отдаёт статический HTML, на клиенте ничего подключать не нужно. action формы POST'ит напрямую в formhook.app/f/YOUR_API_KEY, где YOUR_API_KEY берётся из настроек формы в панели Formhook. Поле _gotcha - honeypot: боты его заполняют, люди не видят, и всё с содержимым там тихо отбрасывается. Поле _redirect отправляет пользователей на страницу благодарности после успешного POST'а, и URL валидируется против вашего списка разрешённых origins.
Что происходит дальше
- Отправка появляется в вашей панели Formhook в течение секунды.
- Push-уведомление срабатывает на каждом устройстве, где вы его включили.
- Отвечайте прямо из панели (Pro и выше), не раскрывая свой настоящий email-адрес.
Запустите вашу контактную форму на Astro сегодня.
Зарегистрируйтесь бесплатно, создайте форму, вставьте API-ключ. Пять минут.
Начать бесплатноБесплатный тариф: 5 форм · 250 отправок/мес · Без банковской карты.
Контактная форма Astro - FAQ
- Нужна ли мне интеграция Astro или серверный адаптер?
- Нет. Форма POST'ит напрямую в Formhook, так что работает с дефолтным статическим выводом Astro. Режим SSR не нужен, адаптер @astrojs/node не требуется.
- Можно ли иметь несколько контактных форм на разных страницах Astro?
- Да. Создайте по одной форме Formhook на каждый случай - контакты, вакансии, рассылка - и вставьте action каждой в нужную .astro-страницу. Бесплатный тариф включает пять форм.
- Как показать страницу благодарности после отправки?
- Добавьте скрытое поле _redirect, указывающее на ваш Astro-маршрут благодарности. URL должен быть в списке разрешённых origins формы. Или, если вы предпочитаете показать inline-успех без перезагрузки, используйте паттерн fetch из руководств Next.js или SvelteKit.
Руководства для других фреймворков
Migrating from Formspree? See how Formhook compares.