基本信息
源码名称:生成验证码和二维码
源码大小:0.59M
文件格式:.zip
开发语言:Java
更新时间:2021-01-18
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):78630559
本次赞助数额为: 1 元×
微信扫码支付:1 元
×
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
源码介绍
验证码可以设置长度、是否中文,二维码可以设置生成二维码的内容
@Override
public void run() {
OutputStream outputStream = null;
OutputStreamWriter outputStreamWriter = null;
InputStreamReader inputStreamReader = null;
try {
//获得输出流
outputStream = socket.getOutputStream();
outputStreamWriter = new OutputStreamWriter(outputStream);
//获得输入流
inputStreamReader = new InputStreamReader(socket.getInputStream());
StringBuffer stringBuffer = new StringBuffer();
char[] chars = new char[2048];
int len = inputStreamReader.read(chars);
//获取请求信息
stringBuffer.append(new String(chars,0,len));
//解析请求资源
String path = stringBuffer.substring(stringBuffer.indexOf("/") 1, stringBuffer.indexOf(" HTTP/1.1")) ;
Map map = null ;
//有参数就解析参数
if (path.indexOf("?")!=-1){
map = new HashMap();
String param = path.substring(path.indexOf("?") 1);
path = stringBuffer.substring(stringBuffer.indexOf("/") 1, stringBuffer.indexOf("?"));
String[] split = param.split("&");
for (String s : split) {
String[] split1 = s.split("=");
map.put(split1[0], URLDecoder.decode(split1[1],"utf-8"));
}
}
//判断请求的资源
if ("codeImage".equals(path)){
if (map != null){//有参返回的二维码
outputStream.write(Result.getCodeImage((String) map.get("content")));
}else//默认返回二维码
outputStream.write(Result.getCodeImage("http://hxb19990523.top:8080/HTML/index.html"));
}else if ("vCode".equals(path)){
if (map != null){//有参返回
//判断验证码类型
boolean flag = "cn".equals(map.get("type"))?true:false;
//没有设置验证码长度默认为4
Integer length = map.get("len")!=null? Integer.parseInt(map.get("len").toString()) : 4;
if (flag) {
//汉字验证码
outputStream.write(ValidateCodeFactory.getChineseVCode(FontsFactory.getChinese(length)));
}
}
}