Preverjanje na strežniku

Vedno preverite SilentShield nonce na svojem strežniku. Preverjanja samo na strani odjemalca lahko boti zaobidejo.

Zakaj na strežniku?

Gradnik teče v brskalniku in vstavi nonce v obrazce. Bot bi lahko preskočil gradnik in oddal obrazec neposredno. Preverjanje na strežniku zagotavlja, da je bil nonce legitimno izdan in preverjen s strani SilentShield.

API končna točka

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" }

Oblika odgovora

Responsejson
{
  "verdict": "human",
  "score": 0.92,
  "difficulty": "pass",
  "challenge_required": false
}
human
human — Uporabnik je zelo verjetno človek. Obdelajte obrazec.
suspicious
suspicious — Uporabnik je morda bot. Razmislite o dodatnih preverjanjih.
bot
bot — Visoka zanesljivost, da gre za bota. Zavrnite obrazec.

Priporočena logika

V večini primerov preverite polje verdict:

Server-Side Logicjavascript
if verdict == "bot":
    reject the submission (403)
elif verdict == "suspicious":
    optionally require additional verification
else:
    process the form normally

Obravnava napak

Če je API SilentShield nedosegljiv (časovna omejitev, napaka 5xx), se odločite za strategijo:

Fail Open
Fail open — Sprejmite obrazec (boljša UX, manj varno)
Fail Closed
Fail closed — Zavrnite obrazec (bolj varno, slabša UX)

Za večino aplikacij priporočamo fail open z beleženjem. Kritični obrazci (prijava, plačilo) bi morali uporabljati fail closed.