SilentShield е невидима, съвместима с GDPR алтернатива на CAPTCHA за приложения на React и Next.js. Зареждате лек клиентски скрипт, получавате токен и го проверявате на сървъра с пакета @forge12interactive/silentshield-sdk-js и един-единствен API ключ. Няма бисквитки и няма проследяване между уебсайтове, а хостингът по подразбиране е в ЕС.
Невидима CAPTCHA за React & Next.js
Работи с всяко React или Next.js приложение чрез лекия скрипт на SilentShield: получете nonce при изпращане и го проверете в бекенда с @forge12interactive/silentshield-sdk-js. Невидима и в съответствие с GDPR.

Developer Experience
Примери с код
Вграждане на клиентския скрипт
<!-- In <head> or before </body> of every page with a form -->
<script src="https://api.silentshield.io/client.js?k=YOUR_API_KEY" defer></script>React компонент
import React, { useState } from "react";
export default function ContactForm() {
const [loading, setLoading] = useState(false);
const [message, setMessage] = useState("");
const handleSubmit = async (e) => {
e.preventDefault();
setLoading(true);
try {
// client.js injects a hidden behavior_nonce input into the form —
// read it from the form data (there is no global SilentShield object).
const formData = new FormData(e.currentTarget);
const nonce = formData.get("behavior_nonce");
// Verify on your backend
const res = await fetch("/api/verify", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ nonce }),
});
const data = await res.json();
if (res.ok && data.success) {
setMessage("Successfully verified!");
// Process form submission
} else {
setMessage("Bot detected. Please try again.");
}
} catch (error) {
console.error("Verification failed:", error);
setMessage("Verification failed. Please try again.");
} finally {
setLoading(false);
}
};
return (
<form onSubmit={handleSubmit}>
<input type="email" placeholder="Email" required />
<button type="submit" disabled={loading}>
{loading ? "Verifying..." : "Submit"}
</button>
{message && <p>{message}</p>}
</form>
);
}Проверка в бекенда (Next.js)
// app/api/verify/route.ts
export async function POST(req: Request) {
const { nonce } = await req.json();
const res = await fetch("https://api.silentshield.io/api/v1/captcha/verify-nonce", {
method: "POST",
headers: {
"Content-Type": "application/json",
"X-Api-Key": process.env.SILENTSHIELD_API_KEY!,
},
body: JSON.stringify({ nonce: nonce }),
signal: AbortSignal.timeout(5000),
});
const result = await res.json().catch(() => ({}));
const human = res.ok && result.ok === true && result.verdict === "human" && result.confidence >= 0.7;
if (!human) {
return Response.json({ error: "Bot detected" }, { status: 403 });
}
// Human — process the form
return Response.json({ success: true });
}Как работи SilentShield в React
SilentShield зарежда малък клиентски скрипт, който извършва невидима проверка, докато потребителят взаимодейства с вашата форма. При изпращане вашият React или Next.js компонент изпраща генерирания токен към бекенда ви, където го проверявате с пакета @forge12interactive/silentshield-sdk-js. Потребителите никога не виждат пъзел, а вашият бъндъл остава лек, защото няма тежък уиджет за рендиране.
Клиентски скрипт плюс сървърна проверка
Няма отделен уеб пакет @silentshield/react за инсталиране — SilentShield работи във всяко React или Next.js приложение чрез клиентския скрипт и сървърна проверка. Добавяте скрипта https://api.silentshield.io/client.js?k=YOUR_API_KEY, четете токена във вашия компонент и го потвърждавате срещу https://api.silentshield.io/api/v1/captcha/verify-nonce, използвайки хедъра X-Api-Key от route handler или API маршрут.
Стъпки за настройка
Създайте акаунт и копирайте своя API ключ. Добавете клиентския скрипт на SilentShield към приложението си и уловете токена при изпращане на формата. Инсталирайте @forge12interactive/silentshield-sdk-js на сървъра си, създайте клиента със своя API ключ и извикайте verify с токена. Ако резултатът е човек, обработете заявката; в противен случай я отхвърлете.
Поверителност и достъпност по подразбиране
SilentShield не използва бисквитки и не проследява между уебсайтове; IP адресът служи само за проверката и не се съхранява в явен вид. Така приложението ви може да бъде защитено в съответствие с GDPR. Проверката се изпълнява по подразбиране на нашите сървъри в Германия. Невидимата проверка отговаря на WCAG 2.1 AA, което поддържа формите ви използваеми за потребители на клавиатура и екранни четци без визуално предизвикателство.
Интегрирайте с React сега
Добавете скрипта и проверявайте на Вашия сървър – със или без @forge12interactive/silentshield-sdk-js.
Често задавани въпроси
Как да добавя CAPTCHA към React приложение?
Заредете клиентския скрипт на SilentShield `https://api.silentshield.io/client.js?k=YOUR_API_KEY` във вашето React или Next.js приложение, получете nonce при изпращане и го проверете на бекенда на `https://api.silentshield.io/v1/verify`, използвайки SDK-то `@forge12interactive/silentshield-sdk-js`. Няма отделен React уеб пакет — клиентският скрипт плюс проверката на бекенда е моделът.
Има ли пакет SilentShield за React?
Няма отделен уеб пакет за React. В React и Next.js добавяте клиентския скрипт `https://api.silentshield.io/client.js?k=YOUR_API_KEY` и проверявате инжектирания `behavior_nonce` на вашия бекенд — с няколко реда fetch или с официалния пакет `@forge12interactive/silentshield-sdk-js`. React Native SDK за мобилни приложения в момента е достъпен при запитване (ранен достъп).
Как работи SilentShield с Next.js?
В Next.js включете клиентския скрипт на SilentShield в страниците си, след което проверете nonce от страна на сървъра — в route handler или API маршрут — с SDK-то `@forge12interactive/silentshield-sdk-js`, извиквайки `https://api.silentshield.io/v1/verify` с хедъра `api-key`. Така формулярите са защитени незабелязано с един-единствен API ключ.
Поддържа ли SilentShield React Native?
React Native SDK за мобилни приложения в момента е в ранен достъп — заявете го на [email protected]. Бекенд проверката работи още днес с `@forge12interactive/silentshield-sdk-js` или с обикновено HTTP извикване към `https://api.silentshield.io/api/v1/captcha/verify-nonce`, блокирайки автоматизираните злоупотреби, без да показва на потребителите пъзели.
Съвместим ли е SilentShield с GDPR в React приложение?
Да. Независимо от фреймуърка, SilentShield пази данните на нашите сървъри в Германия, не задава бисквитки и не проследява между уебсайтове. Вашият React фронтенд зарежда един-единствен клиентски скрипт, а бекендът Ви проверява nonce; IP адресът не се съхранява в открит вид.
Добавя ли SilentShield много натоварване към React приложение?
Почти не. SilentShield зарежда клиентски скрипт от около 49 KB (gzip, измерено на 23.09.2026 г.) без файлове с изображения. Проверката се извършва чрез поведенчески сигнали и proof-of-work nonce, проверяван във Вашия бекенд, без проследяващи заявки към трети страни.