基于SkiaSharp的ASP.NET Core 6.0跨平台图形验证码
由于.Net 团队已经在.net 6.0版本中将System.Drawing.Common 标记为仅在Windows上支持,受此中断性变更,由该库编写的.net 6.0程序无法在非windows平台上正常工作;官方参考链接:中断性变更:仅在 Windows 上支持 System.Drawing.Common - .NET | Microsoft Learn。
所以我分享一个我开发的图形验证码方案,github链接:lhdboy/ClickableCaptcha,首先看实际效果截图:
PC版:
手机版截图(带点击效果):
色盲/色弱模式:
ClickableCaptcha是一个使用SkiaSharp类库的可点击图形验证码,这个图形验证码会生成6*6网格的图像,用户根据底部的提示点击图片内正确的相应位置。
自定义
前端的宽高是根据返回的图片大小在css中硬编码的,如需要修改网格数量或者尺寸,请务必修改前端css代码中的样式。
部署
目前只引用SkiaSharp包,如需部署需要安装对应的SkiaSharp.NativeAssets包:
例如Linux:
<PackageReference Include="SkiaSharp.NativeAssets.Linux" Version="2.88.3" />
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?