ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
本稿はreCAPTCHA v3 使い方について説明します。
前提
公式ドキュメントは以下のURLを参照。
https://developers.google.com/recaptcha/intro
reCAPTCHA v3を使用するにはキー登録が必要となる。
以下のURLからキー登録ができる。
headタグ
headタグ内に以下の記述をする。
<script src='https://www.google.com/recaptcha/api.js?render=Site Key'></script> |
Site keyは自身のものを入力する。
formの作成
<!-- 送信ボタン --> </form> <!-- reCAPCTHA --> <script> function commentSubmitFunc() { grecaptcha.ready(function() { grecaptcha.execute('Site Key', {action: 'Action Name'}) .then(function(token) { $('#test_form').prepend('<input type="hidden" name="g-recaptcha-response" value="' + token + '">'); $('#test_form').submit(); }); }); }</script> |
formの送信ボタンを押したらgrecaptcha.executeを呼び出すようにする。
その際にtokenをサーバーサイドに渡してやる必要がある。
Action Nameには以下のものが指定できる。(公式サイトより抜粋)
homepage See a cohesive view of your traffic on the admin console while filtering scrapers. login With low scores, require 2-factor-authentication or email verification to prevent credential stuffing attacks. social Limit unanswered friend requests from abusive users and send risky comments to moderation. e-commerce Put your real sales ahead of bots and identify risky transactions.
※どなたか適切な日本語訳をお願いします。
本稿のサンプルではhomepageを指定する。
サーバサイドの実装
$gRecaptchaResponse = $_POST["g-recaptcha-response"]; $reCaptchaUrl = "https://www.google.com/recaptcha/api/siteverify?secret=Secret key&response=" . $gRecaptchaResponse; $response = @file_get_contents($reCaptchaUrl); $response = json_decode($response,true); if ($response['success'] != true or $response['score'] < 0.5 ){ //エラー処理 } |
Secret keyは自身のものを入力する。
APIにSecret keyとtokenを渡すことでレスポンスを取得できる。
以下、レスポンスの内容。(公式サイトより抜粋)
{ "success": true|false, // whether this request was a valid reCAPTCHA token for your site "score": number // the score for this request (0.0 - 1.0) "action": string // the action name for this request (important to verify) "challenge_ts": timestamp, // timestamp of the challenge load (ISO format yyyy-MM-dd'T'HH:mm:ssZZ) "hostname": string, // the hostname of the site where the reCAPTCHA was solved "error-codes": [...] // optional } |
ポイントはsuccessとscoreの値。
scoreの幅は1.0~0.0で低いほどbotである可能性が高くなる。
この値を見てbotかどうかを判断する必要がある。
※どの程度の値を設定することがベストなのか情報求む。人が操作するとだいたい0.9になることが多いらしい。
人気ページ
最近更新/作成されたページ
- 【Mac】プリントジョブのオフセットとは(カスタムプリセットとの違い) (2023-08-14 09:54:04)
- 印刷関連 (2023-08-14 09:45:32)
- 【エラー】ドキュメントが読み込まれなかったため、デザイナーを表示できません (2023-08-12 06:36:23)
- SattaMatka (2023-07-03 19:31:13)
- ログイン画面(認証システム)の作成 (2023-06-13 17:09:48)
- 本番環境のdll内で参照しているdllファイルの置き場所 (2023-04-27 18:10:31)
- 【Visual Studio】 C#のForm自動生成時に「値が有効な範囲にありません」エラー (2023-04-27 10:04:15)
- 【Inno Setup】 エラー: disk spanning must be enabled in order to create an installation larger than 2100000000 (2023-04-19 09:29:09)
- Inno Setupとは (2023-04-19 09:27:47)
- その他 (2023-04-19 09:26:00)
最近コメントのあったページ
最近の質問
- c.wiki (2023-09-14 10:51:04)
- $(document).ready(function() { ... ってなに? (2023-04-17 11:02:56)
- 質問です (2020-02-20 12:19:36)
- フリーランスの単価って高いですか? (2020-02-12 19:56:16)
- 情報系のaoを受けるつもりなんですが何かおすすめのソフトはありますか? (2020-02-12 19:54:22)
- test3 (2020-02-08 23:50:54)
- セレクトボックスのCSSのcontentで三角の部分が押せない (2019-07-03 13:06:10)
- GCPのwp-config.phpでpermission denied (2019-06-05 20:04:08)
- Spring FrameworkのEntityのカラム名の大文字小文字、アンスコについて (2019-02-01 07:13:49)
- PHP(Laravel)からPythonのプログラムを呼び出したいのですがどうすればよいでしょうか。 (2018-12-06 06:26:57)
- djangoを本番環境にデプロイしたいのですがどのレンタルサーバー or VPSサーバーがよいですか (2018-12-01 12:04:18)
- Django administrationのUsernameとPasswordについて (2018-11-30 11:55:20)
- Google Adsenseでアダルトコンテンツと誤認されてしまいました。 (2018-09-09 17:15:36)
- Google MapsをUnityで使用する方法&料金 (2018-08-28 02:37:26)
- Amazon PA-APIのSort=salesrankが効かない (2018-07-21 08:54:25)
- 楽観ロックと悲観ロックの違い (2018-01-11 05:05:33)
- レンタルサーバーって沢山ありますけどどこがいいでしょうか?AWSってどうなんですか? (2018-01-09 10:03:20)
- ディープラーニングのライブラリってどれがオススメですか? (2018-01-06 05:15:40)
- Webスクレイピングってどこまでが違法なんでしょうか? (2018-01-06 05:09:08)
- 人工知能(AI)、機械学習、ディープラーニングの違い (2018-01-06 02:40:44)
コメントを削除してもよろしいでしょうか?
No.1 |
guest
| 2019-02-08 02:23:22
recaptcha v3の対応プラットホームはどちらを参照すればよろしいのでしょうか