{"id":24608,"date":"2021-05-22T11:51:00","date_gmt":"2021-05-22T08:51:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=24608"},"modified":"2021-10-18T02:40:05","modified_gmt":"2021-10-17T23:40:05","slug":"google-recaptcha-mit-javascript-validieren","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/de\/google-recaptcha-mit-javascript-validieren\/","title":{"rendered":"Google reCAPTCHA mit JavaScript validieren"},"content":{"rendered":"<p>Google reCAPTCHA ist eine beliebte Wahl zum Schutz der Website-Formulare vor Spam und Bots. Das reCAPTCHA fordert Benutzer auf, einfache R\u00e4tsel zu l\u00f6sen, die f\u00fcr Menschen leicht, f\u00fcr Bots jedoch schwierig sind. Als Ergebnis kann man seinen Serverplatz sparen, da unn\u00f6tige Spam-Eintr\u00e4ge in die Datenbank eingef\u00fcgt werden. Es spart uns auch Zeit, da wir nie Spam-Kommentare in unserem Postfach erhalten.<\/p>\n<p>Wenn wir ein Google reCAPTCHA in Website-Formularen hinzuf\u00fcgen, m\u00fcssen wir einen Code schreiben, um die Antwort von reCAPTCHA zu validieren. Wenn eine Antwort g\u00fcltig ist, sollte nur unser Formular fortfahren.<\/p>\n<p>Es gibt zwei M\u00f6glichkeiten, die Antwort zu validieren, eine serverseitig und die andere clientseitig. In diesem Artikel konzentrieren wir uns auf die clientseitige Validierung und untersuchen daher, wie Sie Google reCAPTCHA mit JavaScript validieren.<\/p>\n<p>Wenn Sie nach einer serverseitigen Validierung suchen, lesen Sie bitte den Artikel <a href=\"https:\/\/themewp.inform.click\/de\/verwenden-von-google-recaptcha-in-ihren-website-formularen-mit-php\/\" title=\"Using Google reCAPTCHA On Your Website Forms With PHP\" >Using Google reCAPTCHA On Your Website Forms With PHP<\/a>.<\/p>\n<h3>Registrieren Sie die Site und erhalten Sie API-Schl\u00fcssel<\/h3>\n<p>Um zu beginnen, m\u00fcssen Sie Ihre Site hier registrieren \u2013 <a href=\"https:\/\/www.google.com\/recaptcha\/admin\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external\"><\/a><a href=\"https:\/\/www.google.com\/recaptcha\/admin\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">https:\/\/www.google.com\/recaptcha\/admin<\/a>.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20518-6081fe9b2d78e.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20518-6081fe9b2d78e.png\" alt=\"Google reCAPTCHA mit JavaScript validieren\" ><\/a><\/p>\n<p>W\u00e4hlen Sie die Option &quot;reCAPTCHA v2&quot;, die ein Kontrollk\u00e4stchen &quot;Ich bin kein Roboter&quot; anzeigt.<\/p>\n<p>Sobald Sie Details in das obige Formular eingegeben haben, erhalten Sie Ihren Site-Schl\u00fcssel und Ihren Geheimschl\u00fcssel. Da es sich um die clientseitige Validierung handelt, ben\u00f6tigen wir nur einen Site Key.<\/p>\n<p>Wenn Sie es auf einem lokalen Server testen m\u00f6chten, f\u00fcgen Sie &#8218;localhost&#8216; als Dom\u00e4ne hinzu.<\/p>\n<h3>Google reCAPTCHA mit JavaScript validieren<\/h3>\n<p>Zuerst m\u00fcssen Sie Ihrem Formular Google reCAPTCHA hinzuf\u00fcgen. Sie k\u00f6nnen dies mit dem folgenden Code tun.<\/p>\n<pre><code>&lt;form method=\"post\" onsubmit=\"return submitUserForm();\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;div class=\"g-recaptcha\" data-sitekey=\"YOUR_SITE_KEY\" data-callback=\"verifyCaptcha\"&gt;&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;div id=\"g-recaptcha-error\"&gt;&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;input type=\"submit\" name=\"submit\" value=\"Submit\" \/&gt;\n&lt;\/form&gt;\n&lt;script src='https:\/\/www.google.com\/recaptcha\/api.js'&gt;&lt;\/script&gt;<\/code><\/pre>\n<p>Im obigen Code verwende ich <code>onsubmit<\/code>event. Dies liegt daran, dass wir beim Absenden eines Formulars durch den Benutzer die reCAPTCHA-Antwort \u00fcberpr\u00fcfen und ihm dann das Absenden eines Formulars gestatten m\u00fcssen.<\/p>\n<p>Dann habe ich dem Attribut &#8218;data-callback&#8216; ein &#8218;verifyCaptcha&#8216; als Namen einer Callback-Funktion hinzugef\u00fcgt. Ich werde diese R\u00fcckrufmethode verwenden, um die Fehlermeldung zu entfernen, sobald die Validierung bestanden wurde. Ich habe auch ein div mit der ID &#8218;g-recaptcha-error&#8216; hinzugef\u00fcgt, um die Fehlermeldung anzuzeigen.<\/p>\n<p>Sie sollten den Platzhalter &quot;YOUR_SITE_KEY&quot; durch Ihren tats\u00e4chlichen Websiteschl\u00fcssel ersetzen.<\/p>\n<p>Schlie\u00dflich schreiben wir einen JavaScript-Code, der die reCAPTCHA-Antwort verarbeitet. Und basierend auf der Antwort zeigt es entweder eine Fehlermeldung an oder l\u00e4sst das Formular fortfahren.<\/p>\n<pre><code>&lt;script&gt;\nfunction submitUserForm() {\n\u00a0\u00a0\u00a0\u00a0var response = grecaptcha.getResponse();\n\u00a0\u00a0\u00a0\u00a0if(response.length == 0) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0document.getElementById('g-recaptcha-error').innerHTML = '&lt;span style=\"color:red;\"&gt;This field is required.&lt;\/span&gt;';\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0return false;\n\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0return true;\n}\n\u00a0\nfunction verifyCaptcha() {\n\u00a0\u00a0\u00a0\u00a0document.getElementById('g-recaptcha-error').innerHTML = '';\n}\n&lt;\/script&gt;<\/code><\/pre>\n<p>In der Methode erhalten <code>submitUserForm<\/code>wir die reCAPTCHA-Antwort mit <code>grecaptcha.getResponse()<\/code>. Dies ist eine integrierte Funktion des Google reCAPTCHA-Dienstes.<\/p>\n<p>Wenn die Antwort ung\u00fcltig ist, wird 0 zur\u00fcckgegeben. Dies bedeutet, dass ein Benutzer reCAPTCHA noch nicht validiert hat. Und so wirft es einen Fehler aus und h\u00e4ngt an das div an, das die ID &#8218;g-recaptcha-error&#8216; hat.<\/p>\n<p>Wenn Google reCAPTCHA eine g\u00fcltige Antwort sendet, gebe ich einen wahren Wert zur\u00fcck, wodurch das Formular weitergef\u00fchrt werden kann.<\/p>\n<p>Die <code>verifyCaptcha<\/code>Methode erh\u00e4lt einen Aufruf, wenn Sie alle R\u00e4tsel von reCAPTCHA l\u00f6sen. Wir entfernen dann die Fehlermeldung, sobald ein R\u00e4tsel gel\u00f6st ist.<\/p>\n<p>Unser endg\u00fcltiger Code lautet:<\/p>\n<pre><code>&lt;form method=\"post\" onsubmit=\"return submitUserForm();\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;div class=\"g-recaptcha\" data-sitekey=\"YOUR_SITE_KEY\" data-callback=\"verifyCaptcha\"&gt;&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;div id=\"g-recaptcha-error\"&gt;&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;input type=\"submit\" name=\"submit\" value=\"Submit\" \/&gt;\n&lt;\/form&gt;\n&lt;script src='https:\/\/www.google.com\/recaptcha\/api.js'&gt;&lt;\/script&gt;\n&lt;script&gt;\nfunction submitUserForm() {\n\u00a0\u00a0\u00a0\u00a0var response = grecaptcha.getResponse();\n\u00a0\u00a0\u00a0\u00a0if(response.length == 0) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0document.getElementById('g-recaptcha-error').innerHTML = '&lt;span style=\"color:red;\"&gt;This field is required.&lt;\/span&gt;';\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0return false;\n\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0return true;\n}\n\u00a0\nfunction verifyCaptcha() {\n\u00a0\u00a0\u00a0\u00a0document.getElementById('g-recaptcha-error').innerHTML = '';\n}\n&lt;\/script&gt;<\/code><\/pre>\n<p>Ich hoffe, Sie verstehen, wie Sie Google reCAPTCHA mit JavaScript validieren. Probieren Sie es in Ihrem Projekt aus und teilen Sie Ihre Gedanken oder Vorschl\u00e4ge im Kommentarbereich unten mit.<\/p>\n<h4>Zum Thema passende Artikel<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/de\/integrieren-sie-google-invisible-recaptcha-mit-php\/\" title=\"Integrieren Sie Google Invisible reCAPTCHA mit PHP\">Integrieren Sie Google Invisible reCAPTCHA mit PHP<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/de\/eine-anleitung-zum-hinzufuegen-von-google-recaptcha-v3-zu-ihrer-laravel-website\/\" title=\"Eine Anleitung zum Hinzuf\u00fcgen von Google reCAPTCHA v3 zu Ihrer Laravel-Website\">Eine Anleitung zum Hinzuf\u00fcgen von Google reCAPTCHA v3 zu Ihrer Laravel-Website<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/de\/so-fuegen-sie-in-laravel-forms-ich-bin-kein-roboter-captcha-hinzu\/\" title=\"So f\u00fcgen Sie hinzu, dass ich kein Roboter-Captcha in Laravel-Formularen bin\">So f\u00fcgen Sie hinzu, dass ich kein Roboter-Captcha in Laravel-Formularen bin<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Aufnahmequelle:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>M\u00f6chten Sie Google reCAPTCHA mit JavaScript validieren? In diesem Artikel zeigen wir Ihnen, wie man mit JavaScript die Google reCAPTCHA-Antwort handhaben oder validieren kann.<\/p>\n","protected":false},"author":1,"featured_media":21785,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[244],"tags":[845],"class_list":["post-24608","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-javascript-3","tag-affiai-de"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/posts\/24608","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/comments?post=24608"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/posts\/24608\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/media\/21785"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/media?parent=24608"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/categories?post=24608"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/tags?post=24608"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}