成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

一款小而美的開源滑動驗證碼組件

開發 前端
react-rotate-captcha? 是一款開箱即用的滑動驗證碼 React? 組件,基于 isszz/rotate-captcha 做的二次開發;結合了騰訊防水墻,增加安全策略.

hi, 大家好, 我是徐小夕, 今天給大家分享一款非常有意思的開源組件, 可以實現我們平時開發中的滑動驗證碼需求, 當然也是技術圈小伙伴奮戰了無數個黑夜和白天的結果, 值得好好推薦一下.

圖片圖片

react-rotate-captcha 是一款開箱即用的滑動驗證碼 React 組件,基于 isszz/rotate-captcha 做的二次開發;結合了騰訊防水墻,增加安全策略.

具體策略由兩部分組成:

  • policie默認策略
  • rules策略組規則

策略規則:

  • limit: 上限次數,達到峰值后重新驗證,0不限制
  • time: 使用期限,過期后重新驗證,0不限制
  • routers: 匹配要授權的路由組,null全匹配

這里的路由是指驗證通過后,要執行操作的路由,而不是驗證操作時的路由

圖片圖片

原理:

  • 驗證通過后將頒發:sid、ticket
  • 執行操作時驗證決定是否通過,通過就去和執行的route進行匹配
  • 從而避免跨權,跨范圍執行

優點:

  • 針對不同應用場景提供驗證
  • 例如登錄驗證有效期30分鐘,后臺操作按次數進行身份驗證

后端提供 Laravel 擴展:levi/laravel-rotate-captcha ,可直接使用或根據 Api 接口定制.

效果如下:

圖片圖片

設計思路

圖片圖片

具體的使用安裝方式如下:

// yarn安裝
yarn add react-rotate-captcha

// pnpm安裝
pnpm add react-rotate-captcha

使用方式如下:

// 1. 通過status喚起
import { useState } from 'react';
import RotateCaptcha from "react-rotate-captcha";

function App() {
    const [open, setOpen] = useState(true);
    return <RotateCaptcha open={open} onClose={() => setOpen(false)} />
}

// 2. 通過Instance喚起
import RotateCaptcha from "react-rotate-captcha";

function Page() {
    const captcha = RotateCaptcha.useCaptchaInstance();
    return (
        <button onClick={() => captcha.open()}>click it</button>
    );
}

function App() {
    return (
        <RotateCaptcha>
            <Page />
        </RotateCaptcha>
    );
}

當然我們也可以使用 ref 來實現同樣的效果:

import { useRef } from 'react';
import RotateCaptcha, { CaptchaInstance } from "react-rotate-captcha";

function App() {
    const ref = useRef<CaptchaInstance>(null);
    return (
        <RotateCaptcha ref={ref}>
            <button onClick={() => ref.current!.open()}>click it</button>
        </RotateCaptcha>
    );
}

基本屬性介紹:

圖片圖片

同時該組件接受5個方法,只有 onClose 和 result 是同步函數,其余全部為異步函數:

圖片圖片

更詳細的用法大家可以在github上學習參考:

https://github.com/cgfeel/react-rotate-captcha

demo 目前提供了 webpack 和 vite 版本的, 可以在: https://codesandbox.io/p/devbox/react-rotate-captcha-ts-react-vite-t23lcq 體驗.

責任編輯:武曉燕 來源: 趣談前端
相關推薦

2021-09-26 16:31:18

滑動驗證碼開發組件設計

2021-09-14 08:38:57

組件開源前端

2024-01-11 08:19:17

開源界驗證碼滑動類

2021-07-23 16:50:19

httpJava框架

2024-08-16 08:31:05

2013-06-19 10:19:59

2016-12-20 09:13:27

開源項目sofa

2011-01-04 16:16:59

2022-06-22 13:25:41

蘋果iOSiOS 16

2024-01-17 08:08:48

github?開源項目

2016-02-15 11:44:23

源碼開源項目watch

2023-01-29 07:49:57

2011-06-28 09:03:14

MeeGoN9諾基亞

2009-02-09 14:17:36

2009-08-11 14:05:28

JSP驗證碼

2020-11-16 07:28:53

驗證碼

2015-09-21 15:31:05

php實現驗證碼

2022-02-11 07:10:15

驗證碼

2021-01-19 10:29:34

短信驗證碼密碼
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久黄网 | 91免费版在线观看 | 久久国产99 | 国产激情在线看 | 亚洲国产精品va在线看黑人 | 国产一区二区三区在线 | 懂色av蜜桃av | 天天成人综合网 | 日韩高清不卡 | 午夜精品久久久久久久久久久久久 | 欧美区日韩区 | 久久午夜国产精品www忘忧草 | 秋霞电影一区二区三区 | 久久www免费人成看片高清 | 成人国产精品久久 | 91av大全 | av一区在线观看 | 九九久久精品 | 日韩免费一区二区 | 亚洲综合大片69999 | 一区二区三区欧美在线 | 国产成人精品一区二区三区网站观看 | 欧美一级久久 | 午夜视频精品 | 精品成人佐山爱一区二区 | 久久久一二三区 | 九九综合| 欧美一区二 | 亚洲欧美中文日韩在线v日本 | 国产精品美女久久久久久免费 | 久久久精品影院 | 国产精品久久7777777 | 精品美女久久久久久免费 | 免费h视频 | 亚洲天堂中文字幕 | 蜜桃av鲁一鲁一鲁一鲁 | www性色 | 日韩欧美精品 | 视频一区二区三区在线观看 | 在线āv视频 | 亚洲a视频 |