#captcha #back-end #hcaptcha #protection #security

hcaptcha_derive

hCaptcha 宏。请使用 hcaptcha 库。

11 个稳定版本

2.4.7 2024年8月17日
2.4.4 2024年7月27日
2.3.1 2024年1月27日
2.2.2 2023年4月9日
2.1.0 2021年10月29日

#24 in #protection

Download history 244/week @ 2024-04-26 369/week @ 2024-05-03 338/week @ 2024-05-10 266/week @ 2024-05-17 270/week @ 2024-05-24 98/week @ 2024-05-31 70/week @ 2024-06-07 62/week @ 2024-06-14 36/week @ 2024-06-21 135/week @ 2024-06-28 56/week @ 2024-07-05 44/week @ 2024-07-12 66/week @ 2024-07-19 368/week @ 2024-07-26 136/week @ 2024-08-02 117/week @ 2024-08-09

688 下载/每月
hcaptcha 中使用

MIT/Apache

16KB
145 行代码(不含注释)

Rust 库 hcaptcha

Crates.io MIT licensed Build Status Rust 1.75+ FOSSA Status Docs BuyMeaCoffee GitHubSponsors

hcaptcha Rust 库用于与您的后端服务配合,验证客户端提供的 hCaptcha 响应。

安装

要在项目中使用 hcaptcha-rs,您可以在 Cargo.toml 中添加以下内容:

[dependencies]
hcaptcha = "2.4.6"

用法

在表示您数据的结构体上衍生一个验证方法,标记数据结构中的验证码组件。

# use hcaptcha::Hcaptcha;

#[derive(Debug, Deserialize, Hcaptcha)]
pub struct ContactForm {
    name: String,
    phone: String,
    email: String,
    message: String,
    #[captcha]
    token: String,
}

验证验证码数据。

    # #[tokio::main]
    # async main() -> Result<(), Box<dyn std::error::Error>> {
    let contact_form: ContactForm = serde_json::from_str(e.body_string())?;
    contact_form.valid_response(&secret, None).await?;
    # }
    # fn get_your_secret() -> String {
    #   "0x123456789abcde0f123456789abcdef012345678".to_string()
    # }

请参阅示例文件夹中的 AWS Lambda 联系表单示例。

许可证

根据以下任一许可证授权:

第三方许可证

有关第三方许可证的摘要,请参阅 此处

贡献

除非您明确说明,否则根据 Apache-2.0 许可证定义的,您有意提交的任何贡献,将根据上述许可证双授权,不附加任何额外条款或条件。

致谢

初始版本基于 panicbit 的 recaptcha-rs

依赖关系

~320–780KB
~18K SLoC