C#后台生成验证码
https://www.cnblogs.com/vchenpeng/archive/2013/05/12/3074887.html
/// <summary>
/// 获取时间戳
/// </summary>
/// <returns></returns>
public static string GetTimeStamp()
{
TimeSpan ts = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0);
return Convert.ToInt64(ts.TotalSeconds).ToString();
}
/// <summary>
/// 获取验证码
/// </summary>
/// <param name="str"></param>
/// <returns></returns>
public static string getCode(this string str)
{
int number;
char code;
string checkCode = String.Empty;
Random random = new Random();
foreach (char c in str)
{
number = random.Next();
if (c % 2 == 0)
{
code = (char)('0' + (char)(number % 10));
if (System.Text.RegularExpressions.Regex.IsMatch(code.ToString(), "^[0-9]+$"))
{
checkCode += code;
}
}
else
{
code = (char)('C' + (char)(number % 26));
if (System.Text.RegularExpressions.Regex.IsMatch(code.ToString(), "^[A-Z]+$"))
{
checkCode += code;
}
}
}
return checkCode;
}
/// <summary>
2 /// 动态生成指定数目的随机数或字母
3 /// </summary>
4 /// <param name="num">整数</param>
5 /// <returns>返回验证码字符串</returns>
6 private string GenerateCheckCode(int num)
7 {
8 int number; //定义变量
9 char code;
10 string checkCode = String.Empty; //空字符串,只读
11 Random random = new Random(); //定义随机变量实例
12 for (int i=0; i < num;i++ )
13 {
14 //利用for循环生成指定数目的随机数或字母
15 number = random.Next(); //返回一个小于指定的最大值的非负的随机数 next有三个构造函数
16 if (number % 2 == 0)
17 {
18 //产生一个一位数
19 code = (char)('0' + (char)(number % 10));
20 }
21 else
22 {
23 //产生一个字母
24 code = (char)('C'+(char)(number % 26));
25 }
26 checkCode += code.ToString();
27 }
28 return checkCode;
29 }
C#后台生成验证码的更多相关文章
- springmvc后台生成验证码
url http://localhost:8080/admin/getCode http://localhost:8080/admin/checkCode controller package com ...
- PHP-仿ecshop生成验证码
<?php /* 生成验证码 */ // 1.创建画布(基于已有图像) $n = mt_rand(1,5); $im = imagecreatefromjpeg('./images/captch ...
- Asp.net mvc生成验证码
1.生成验证码类 using System; using System.Collections.Generic; using System.Linq; using System.Text; using ...
- SpringMvc项目中使用GoogleKaptcha 生成验证码
前言:google captcha 是google生成验证码的一个工具类,其原理是将随机生成字符串保存到session中,同时以图片的形式返回给页面,之后前台页面提交到后台进行对比. 1.jar包准备 ...
- 【开发技术】Java生成验证码
Java生成验证码 为了防止用户恶意,或者使用软件外挂提交一些内容,就得用验证码来阻止,虽然这个会影响用户体验,但为了避免一些问题很多网站都使用了验证码;今天下午参考文档弄了一个验证码,这里分享一下; ...
- Dede织梦验证码不显示,织梦后台登陆验证码不显示解决方法
关于"织梦验证码不显示"的解决方法 "织梦验证码无法显示出来"的问题分析? 1.之前显示正常,但是换了服务器后就不能够正常显示:(这种通常是网站程序经过迁移后所 ...
- Java生成验证码_转
为了防止用户恶意,或者使用软件外挂提交一些内容,就得用验证码来阻止,虽然这个会影响用户体验,但为了避免一些问题很多网站都使用了验证码;今天下午参考文档弄了一个验证码,这里分享一下;这是一个web工程, ...
- java生成验证码结合springMVC
在用户登录的时候,为了防止机器人攻击都会设置输入验证码,本篇文章就是介绍java如何生成验证码并使用在springMVC项目中的. 第一步:引入生成图片验证码的工具类 import java.awt. ...
- Dedecms织梦后台登陆验证码不显示几种解决方法
Dedecms织梦后台登陆验证码不显示几种解决方法,服务器所造成的验证码不显示问题看这里: 方法一:查看服务器的php版本是否与程序版本兼容(织梦程序PHP版本查看方法:打开www.96net.com ...
随机推荐
- hdu 1150 Machine Schedule 最小覆盖点集
题意:x,y两台机器各在一边,分别有模式x0 x1 x2 ... xn, y0 y1 y2 ... ym, 现在对给定K个任务,每个任务可以用xi模式或者yj模式完成,同时变换一次模式需要重新启动一次 ...
- Protocol Buffer序列化对比Java序列化.
初识 Protocol Buff是谷歌推出的一种序列化协议. 而Java序列化协议也是一种协议. 两者的目的是, 将对象序列化成字节数组, 或者说是二进制数据, 那么他们之间有什么差异呢. proto ...
- webrtc视频数据接收端处理流程详解
- Model中内部类meta详解
Django 模型类的Meta是一个内部类,它用于定义一些Django模型类的行为特性. 以下对此作一总结: Model 元数据就是 "不是一个字段的任何数据" -- 比如排序选项 ...
- android项目 之 记事本(11) ----- 加入数据库
本文是自己学习所做笔记.欢迎转载.但请注明出处:http://blog.csdn.net/jesson20121020 通过之前的10节,已实现了记事本的大部分功能,有加入拍照.加入照片,加入录音,加 ...
- Nginx平台构架
深入理解Nginx模块发开与架构解析读书笔记. nginx在启动后,在unix系统中会以daemon的方式(能够手动关闭 nginx.conf daemon off)在后台执行,后台进程包括一个mas ...
- jmeter的安装
1.安装jdk和环境变量配置 变量名:[JAVA_HOME] 变量值:[D:\Program Files\Java\jdk1.8.0_92][jdk安装路径] 变量名:[path] 变量值:[ ...
- cookie和session(一)
先来谈谈我对session和cookie的理解,事实上,只要你去面试web开发,面试官十有八九会问这个问题. cookie和session经常被放在一起问,其实在我看来这两个东西完全是两个不一样的. ...
- SGD
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- idea 安装热部署插件
jrebel(http://zeroturnaround.com/)的作用就是当你的代码改变时,你不需要重启服务,节省了时间.代码的改变有很多种,比如增加class.在class中增加方法等等.下面介 ...