Source tại: https://github.com/ngotruong09/AbpCaptcha.git
Tổng quan
Đây là một thư viện tạo captcha được sử dụng trên framework Abp. Các chức năng chính:
- [x] Tạo captcha
- [x] Verify captcha
Cách sử dụng
Install package từ nuget hoặc clone source here để sử dụng:
Install-Package AbpCaptcha -Version 1.0.0
Tiếp theo, thêm [DependsOn(typeof(CaptchaModule))]
vào class ABP module trong project của bạn.
Sau đó, sử dụng service ICaptchaEngine
để GetCaptcha/VerifyCaptcha
captcha.
Cách cấu hình
Cấu hình trong file appsettings.json
{"Captcha":{"FontFamilies":["Arial", "Times New Roman"],
"Timeout":300,
"Pattern":"abcdefghijkmnpqrstuvwxyzABCDEFGHJKLMNPQRSTUVXYZW23456789",
"SizeText":6,
"DrawLines":4}}
Hoặc trong ConfigureServices
:
Configure<CaptchaOptions>(options =>{
options.FontFamilies = new string[]{"Arial", "Times New Roman"};
options.Timeout =300;
options.Pattern ="abcdefghijkmnpqrstuvwxyzABCDEFGHJKLMNPQRSTUVXYZW23456789";
options.SizeText =6;
options.DrawLines =4;});
Ý nghĩa một số tham số cấu hình:
FontFamilies
: font của captcha (hình);Timeout
: thời gian expired của captcha, thời gian chờ người dùng nhập captcha, tính bằng giây;Pattern
: các kí tự có thể có mặt trong captcha;SizeText
: số lượng kí tự trong captcha;DrawLines
: số đường line trong captcha (chủ yếu tạo độ nhiễu)Width
: kích thước chiều rộng của hình captchaHeight
: kích thước chiều dài của hình captcha- …
Ví dụ một số cấu hình:
{"Captcha":{"FontFamilies":["Arial", "Times New Roman"],
"Timeout":300,
"Pattern":"23456789",
"SizeText":4,
"DrawLines":5}}
{"Captcha":{"FontFamilies":["Arial", "Times New Roman"],
"Timeout":300,
"Pattern":"abcefgh23456789",
"SizeText":6,
"DrawLines":3}}
Nguồn: viblo.asia