2 releases
new 0.1.2 | May 15, 2025 |
---|---|
0.1.1 | May 15, 2025 |
#1854 in Web programming
79 downloads per month
Used in captval
23KB
327 lines
Rust library captval
The rust library captval is used with your backend service to verify the captval response provided from the client.
Installation
To use captval, add the following to your Cargo.toml
:
[dependencies]
captval = "0.1.2"
Usage
Derive a validation method on the data structure representing your data, marking the captcha components in the data structure.
# use captcha::Captcha;
#[derive(Debug, Deserialize, Captcha)]
pub struct ContactForm {
name: String,
phone: String,
email: String,
message: String,
#[captcha]
token: String,
}
Validate the captcha data.
# #[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()
# }
See the examples folder for an AWS Lambda contact form example.
Web Assembly
Hcaptcha has been tested in a web assembly project using wasm-bindgen and node.
See the captval-wasm
example for a sample project which can be run using wasm-pack test --node
.
License
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT) at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Dependencies
~255–690KB
~16K SLoC