Ich habe mein reCAPTCHA so implementiert, wie es in dem Beispiel gezeigt wird.
Ich habe dieses Skript in den "head"-Tag:
<script src="https://www.google.com/recaptcha/api.js"></script>
In meinem "Formular" in HTML habe ich:
<div class="g-recaptcha" data-sitekey="my public sitekey here"></div>
Aber wenn ich das Formular lade, bekomme ich diesen Fehler:
ERROR: Ungültige Domäne für Standortschlüssel
Ich habe mich vergewissert, dass es sich um den richtigen Standortschlüssel für meine Domäne handelt.
Der Code ist derzeit in einer Subdomain, so dass ich dachte, vielleicht war das das Problem, so fügte ich auch die Subdomain auf die Google reCAPTCHA Admin, aber immer noch den Fehler erhalten.
Derselbe Code funktioniert zu 100 % in einer anderen Domäne (mit einem für diese Domäne spezifischen Schlüssel).
Wo könnte das Problem liegen?
Für den Fall, dass jemand ein ähnliches Problem hat. Meine Lösung war, den Schlüssel, der nicht funktionierte, zu löschen und einen neuen Schlüssel für meine Domain zu bekommen. Und das funktioniert jetzt auch mit all meinen Subdomains, ohne dass ich sie explizit im Recaptcha-Adminbereich angeben muss.
Ich habe während des Unit-Tests localhost verwendet, als mein Recaptcha-Schlüssel auf 127.0.0.1 registriert wurde. Also änderte ich meinen Browser, um auf 127.0.0.1 zu verweisen, und es begann zu funktionieren. Obwohl ich in der Lage war, "localhost" zur Liste der Domänen in meinen ReCaptcha-Schlüssel-Einstellungen hinzuzufügen, bin ich immer noch nicht in der Lage, Unit-Tests mit localhost durchzuführen. Ich muss die Loopback-IP-Adresse 127.0.0.1 verwenden.
Es gibt noch einen weiteren Punkt, der beachtet werden muss, bevor die Schlüssel regeneriert werden, die 90% der Probleme lösen.
Ihr xampp-Verzeichnis ist zum Beispiel C:\xampp
und der Ordner htdocs ist C:\xampp\htdocs
wir möchten die Seite example-cap.html öffnen und die Seite zeigt die Fehlermeldung "invalid domain for site key"
BENUTZEN SIE IHRE LOKALEHOSTADRESSE in der Browseradresse wie:
localhost/example-cap.html
dies wird Ihr Problem lösen
VERWENDEN SIE NICHT DIE ADRESSE c:\xampp\htdocs\example-cap.html dies wird einen Fehler erzeugen