Serverio pusės patikra
Visada patikrinkite SilentShield nonce savo serveryje. Vien kliento pusės patikrinimai gali būti apeiti botų.
Kodėl serverio pusėje?
Valdiklis veikia naršyklėje ir įterpia nonce į formas. Botas gali praleisti valdiklį ir pateikti formą tiesiogiai. Serverio pusės patikra užtikrina, kad nonce buvo teisėtai išduotas ir patvirtintas SilentShield.
API galinis taškas
- Method
POST- URL
https://api.silentshield.io/api/v1/captcha/verify-nonce- Headers
- X-Api-Key: YOUR_API_KEY Content-Type: application/json
- Body
- { "nonce": "the-nonce-from-the-form" }
Atsakymo formatas
{
"ok": true,
"verdict": "human",
"confidence": 0.92,
"requested_nonce": "..."
}human- human — vartotojas greičiausiai yra žmogus. Apdorokite formą.
suspicious- suspicious — serveris atmetė (HTTP 403, `ok: false`). Verdiktas nurodo priežastį, o ne sprendimą: jį jau priėmė jūsų paskyros slenkstis.
bot- bot — didelis tikrumas, kad tai botas. Atmeskite formą.
Rekomenduojama logika
Serveris jau pritaikė jūsų paskyros slenkstį: atmetimas ateina kaip HTTP 403 su `ok: false`. Todėl tikrinkite praleidimą, o ne `bot` — kitaip praleisite kiekvieną atmetimą, paskelbtą kaip `suspicious`, ir kiekvieną atsakymą be verdikto (netinkamas raktas, išnaudota kvota).
if not ok or verdict != "human":
atmesti formą (403)
else:
apdoroti formą įprastaiKlaidų apdorojimas
Jei SilentShield API nepasiekiama (laiko limitas, 5xx klaida), nuspręskite dėl savo strategijos:
- Fail Open
- Praleisti — priimti formą (geresnė vartotojo patirtis, mažiau saugu)
- Fail Closed
- Blokuoti — atmesti formą (saugiau, blogesnė vartotojo patirtis)
Daugumai programų rekomenduojame praleisti su registravimu. Svarbios formos (prisijungimas, mokėjimas) turėtų blokuoti.