跳转到内容
搜索文档

hCaptcha

最后更新 查看 MarkdownAgent 设置

hCaptcha Pages Plugin 验证 hCaptcha 令牌。

安装

npm i @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) => {
		// Request has been validated as coming from a human

		const formData = await context.request.formData();

		// Store user credentials

		return new Response("Successfully registered!");
	},
];

此 Plugin 仅暴露单个路由。它将在挂载的任何位置可用。在上面的示例中,因为它挂载在 functions/register.ts 中,将验证对 /register 的请求。Plugin 使用单个对象参数挂载,具有以下属性。

secret(必填)和 sitekey(可选)均可在 hCaptcha 仪表板中找到。

responseremoteip 是可选字符串。response 是要验证的 hCaptcha 令牌(默认从 multipart/form-data 请求中提取 h-captcha-response)。remoteip 应为请求者的 IP 地址(默认为请求的 CF-Connecting-IP 标头)。

onError 是可选函数,接受 Pages Function context 对象并返回 Promise<Response>。默认情况下,将返回人类可读的错误 Response

data.hCaptcha 将在后续 Pages Functions(包括 onError 函数)中填充 hCaptcha 响应对象

这篇文档对您有帮助吗?