当前位置: 首页 > news >正文

网站建设勹金手指科捷14网站设计抄袭

网站建设勹金手指科捷14,网站设计抄袭,免费版个人简历,建设网站需要备案开源博客项目Blog中的后台管理登录界面中支持输入验证码(如下图所示),本文学习并记录项目中验证码的生成及调用方式。   博客项目中调用VerifyCode类生成验证码,该类位于App.Framwork项目中,命名空间为App.Framwork…

  开源博客项目Blog中的后台管理登录界面中支持输入验证码(如下图所示),本文学习并记录项目中验证码的生成及调用方式。
在这里插入图片描述
  博客项目中调用VerifyCode类生成验证码,该类位于App.Framwork项目中,命名空间为App.Framwork.Generate。VerifyCode类主要包括十几种参数设置,两种验证码生成方式(随机字符串,问题型)。主要参数设置如下所示:

序号名称类型说明
1SetLengthint主要用于随机字符串型的验证码,设置随机字符串的长度,默认值为4
2SetVerifyCodeTextstring保存生成的验证码
3SetAddLowerLetterbool设置验证码中是否包含小写字母,默认值为true
4SetAddUpperLetterbool设置验证码中是否包含大写字母,默认值为true
5SetFontSizeint设置验证码的字体大小,用于生成验证码图片,默认值为18
6SetFontColorColor设置验证码的字体颜色,用于生成验证码图片,默认值为蓝色
7SetFontFamilystring设置验证码的字体名称,用于生成验证码图片,默认值为Verdana
8SetBackgroundColorColor设置验证码图片的背景色,用于生成验证码图片,默认值为AliceBlue
9SetIsBackgroundLinebool设置验证码图片中是否包含线条,以便提升识别难度
10SetForeNoisePointCountint设置验证码图片中的前景噪点数量,以便提升识别难度,默认值为2,但实际从代码来看增加的比设置的多
11SetRandomAngleint设置验证码图片中单个字符的最大旋转角度,主要用于随机字符串型的验证码,默认值为40
12SetIsRandomColorbool设置是否随机生成验证码的字体颜色,默认值为true,效果是每次生成的验证码图片中的字体颜色都是随机生成
13SetWithint设置验证码图片的宽度
14SetHeightint设置验证码图片的高度
15VerifyCodeResultstring保存问题型验证码的答案

  随机字符串型验证码的生成函数为GetVerifyCodeText,其生成步骤如下:
  1)创建字符池,首先加入1-9的数字,再根据设置分别加入大写字母和小写字母,这里特地将O和o去掉了,避免难以识别;
  2)根据验证码长度,逐一从字符池中随机取字符,用后即弃(使用StringBuilder实现,用后直接移除指定位置的内容即可),最后返回完整的验证码字符串。

  问题型验证码的生成函数为GetQuestion,其生成步骤如下:
  1)如果提供有问答对集合(即函数输入参数questionList,默认为null),则从集合中随机抽取一组问答对并返回;
  2)如果没有提供问答对集合,则随机生成100以内的加减乘除算式,并保存计算结果,然后返回算式和结果的问答对。

  验证码图片的生成函数为GetVerifyCodeImage,其生成步骤如下:
  1)创建空图片,图片高度大致为1.6倍字体大小,宽度为验证码长度倍字体大小,填充背景色;
  2)增加前景噪点,噪点数量为图片宽度乘以SetForeNoisePointCount,绘制方式为将图片随机像素点位置的颜色换为字体颜色;
  3)增加背景噪点,分为两部分,首先是噪点,数量为2倍图片宽度,绘制方式为在图片随机位置绘制宽和高均为1的矩形。接着按设置增加干扰线条,绘制方式是根据随机生成两侧坐标绘制线条;
  4)从左向右逐个绘制验证码的字符,如果需要旋转字符,则随机生成旋转角度,旋转坐标后再绘制字符,最后返回图片内容

  博客项目中LoginController类调用验证码生成类,该类位于App.Hosting项目中,命名空间为App.Hosting.Areas.Main.Controllers,具体调用函数为ValidateCode,函数返回验证码图片,并将验证码内容放在HttpContext.Session中返回,前端调用页码则是Index.cshtml。

  从上面的分析可以看出,开源博客项目Blog中提供的验证码生成类相对独立,实现逻辑清晰易懂,扩展起来也比较方便,能够按需放在其它项目或程序中。

参考文献:
[1]https://gitee.com/miss_you/Blog
[2]https://www.donet5.com/Home/Doc

http://www.yayakq.cn/news/449095/

相关文章:

  • 上海免费网站建设咨询新余集团网站建设
  • 网站开发资金规模北京建设局网站首页
  • 太原网站建设优化电子商务网站建设中应注意哪些问题
  • 高平做网站太原网站建设总部在哪
  • 计算机网站开发背景怎么怎么做网站
  • 旅游网站开发文档怎么写漳平网络建站公司
  • 食品类网站模板企业网站建设的基本原则为
  • 网站建站行业公司主页建设临沂seo公司
  • 专业网站建设专家做企业网站需要准备什么资料
  • 女人与黑狗做视频网站做资源网站有哪些
  • 网站推广方案整理前端小程序开发流程
  • wordpress编辑网站的链接是中文wordpress插件访客能用吗
  • 公司做网站注意什么手机网站制作与建设
  • 重庆铜梁网站建设费用dw怎么做单页网站
  • 义乌网站建设技术托管wordpress后台上不去
  • 专门做特卖的网站是什么意思毕业设计做网站还是系统好
  • 西安企业网站设计哪家专业做跨境电商的步骤
  • 英文网站建设百度搜索引擎关键词优化
  • js网站开发教程兰州网站建设|兰州网站制作|兰州网站设计公司|兰州网络公司
  • 设计公司官方网站wordpress主题idown
  • 汉中专业网站建设服务网站建设 架构
  • 哈尔滨网站开发需要多少钱盐城网站开发市场
  • 网站建设价格比较centos 安装wordpress lnmp
  • 个人资料展示网站小程序app开发制作
  • 济南企业制作网站wordpress 网站显示ip
  • 官方网站开发需求深圳地址大全
  • 东莞能做网站的公司wordpress简约主题分享
  • 淘宝客api同步到网站商城网站建设fwshop
  • 九江网站建设优化公司局域网怎么建立
  • 网站后台的关键词在线免费logo设计生成器