#leptos #web

leptos-captcha

Leptos的简单Captcha / PoW组件

2个不稳定版本

0.2.0 2024年2月2日
0.1.0 2023年12月31日

866WebAssembly 中排名

Download history 70/week @ 2024-04-15 93/week @ 2024-04-22 100/week @ 2024-04-29 98/week @ 2024-05-06 106/week @ 2024-05-13 65/week @ 2024-05-20 59/week @ 2024-05-27 70/week @ 2024-06-03 67/week @ 2024-06-10 76/week @ 2024-06-17 46/week @ 2024-06-24 41/week @ 2024-07-01 45/week @ 2024-07-08 51/week @ 2024-07-15 66/week @ 2024-07-22 70/week @ 2024-07-29

每月 237 次下载

MIT 许可证

9KB
132 代码行

leptos-captcha

这是一个简单的Captcha组件。所有操作都在同一个后端进行,没有任何外部依赖。
所使用的Proof of Work (PoW)的crate是spow,这是我的另一个项目。如果您想了解更多关于算法的信息,请查看仓库。
不需要用户输入,解决奇怪的谜题或类似的东西。这比传统的captcha提供了更好的用户体验。

此组件旨在注入到<form>中以方便与leptos server_fn的联用,但当然您也可以独立使用它并构建自定义解决方案。在这种情况下,您可能需要直接使用spow

出于两个原因,故意不使用内联CSS

  • 如果您不喜欢,就不需要强制使用unsafe-inline CSP的style-src
  • 您可以自定义整个外观。出于这些原因,您需要以适合您需求的方式在您的应用程序中导入css/leptos-captcha.css,或者简单地将其复制并粘贴到当前的main.scss中。

有一个基于官方start-axum模板的示例。只需看一下,应该(希望)就能清楚地了解如何使用此组件。

目前,它运行在本地线程。这意味着如果您难度太高,它将阻塞UI。将来可能通过将其外包给web worker进行改进,尽管在生产环境中您可能根本不需要这样做。

screenshot

Leptos兼容性

Leptos 0.5: leptos-captcha 0.1 Leptos 0.6: leptos-captcha 0.2+

依赖关系

~20–32MB
~527K SLoC