コンテンツにスキップ

hCaptcha

hCaptcha Pages Pluginは、hCaptchaトークンを検証します。

インストール

Terminal window
npm install @cloudflare/pages-plugin-hcaptcha

使用法

import hCaptchaPlugin from "@cloudflare/pages-plugin-hcaptcha";
export const onRequestPost: PagesFunction[] = [
hCaptchaPlugin({
secret: "0x0000000000000000000000000000000000000000",
sitekey: "10000000-ffff-ffff-ffff-000000000001",
}),
async (context) => {
// リクエストは人間からのものであることが検証されました
const formData = await context.request.formData();
// ユーザーの資格情報を保存します
return new Response("正常に登録されました!");
},
];

このプラグインは、単一のルートのみを公開します。マウントされた場所で利用可能です。上記の例では、functions/register.tsにマウントされているため、/registerへのリクエストを検証します。プラグインは、以下のプロパティを持つ単一のオブジェクトパラメータでマウントされます。

secret(必須)およびsitekey(オプション)は、hCaptchaダッシュボードで見つけることができます。

responseおよびremoteipはオプションの文字列です。responseは検証するhCaptchaトークン(デフォルトではmultipart/form-dataリクエストからh-captcha-responseを抽出します)。remoteipはリクエスターのIPアドレスであるべきです(デフォルトではリクエストのCF-Connecting-IPヘッダーを使用します)。

onErrorはオプションの関数で、Pages Functionのコンテキストオブジェクトを受け取り、ResponsePromiseを返します。デフォルトでは、人間が読みやすいエラーレスポンスを返します。

data.hCaptchaは、hCaptchaレスポンスオブジェクトで、以降のPages Functions(onError関数を含む)にポピュレートされます。