zoukankan      html  css  js  c++  java
  • 基于node网站验证码

    1.前端页面

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <style>
            input{
                height:30px;
                float: left;
            }
        </style>
        <script src='js/jquery-3.4.1.js'></script>
    </head>
    <body>
          
        <input type='text' name='verify' placeholder='请输入验证码'/><span id='verify'></span>
    </body>
    <script>
    function getVerify(){
        $.ajax({
            url:'/verifyCode?t='+Math.random(),
            type:'get',
            success:function(data){
                $('#verify').html(data);
            }
        })
    }
    getVerify()
    $('#verify').on('click',function(){
        getVerify()
    })
    </script>
    </html>

    2.node服务端代码

    let express=require('express');
    let template=require('art-template');
    let app=express();
    let path=require('path');
    // 验证码
    let svgCaptcha=require('svg-captcha');
    // cookie
    let cookoeParser=require('cookie-parser');
    
    // 引入封装好的数据库操作
    let db=require('./service/db');
    
    // 静态资源路径
    app.use(express.static(path.join(__dirname,'public')));
    
    // 设置模板路径
    app.set('views',path.join(__dirname,'views'));
    // 设置模版引擎
    app.set('view engine','html');
    // express-art-template
    app.engine('html',require('express-art-template'));
    // 启用cookie
    app.use(cookoeParser());// 创建一个验证码
    app.get('/verifyCode',(req,res)=>{
        // 创建验证码
        var captcha = svgCaptcha.create({
            color: true, // 彩色
            //inverse:false,// 反转颜色
            100, //  宽度
            height:40, // 高度
            fontSize:48, // 字体大小
            size:4, // 验证码的长度
            noise:3, // 干扰线条
            ignoreChars: '0oO1ilI' // 验证码字符中排除 0o1i
        });
        // console.log(captcha.data); svg 直接输出到页面
        // cookie里面放一份,session里面也放一份
        req.session=captcha.text.toLowerCase();
    
        // cookie放一份
        res.cookie('captcha',req.session);
        res.send(captcha.data);
        // 往session,cookie中都存入一个验证码,并且把验证码显示在页面上
    })
    
    // 监听端口
    app.listen(8080,()=>console.log('runnning'));
  • 相关阅读:
    iphone5刷机教程
    ios开发之--/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby: bad interpreter: No such file
    浅谈iPhone OS(iOS)架构
    ios开发之--使用xib适配iPhone X
    ios开发之--armv7,armv7s,arm64,i386,x86_64详解
    ios开发之--UIButton中imageView和titleLabel的位置调整
    gem install cocoapods ERROR: While executing gem ... (Gem::FilePermissionError)
    ios开发之NSString用strong还是用copy?
    ios开发之--高德地图以及自定义大头针和气泡、导航
    iOS
  • 原文地址:https://www.cnblogs.com/pony-Bug/p/13083797.html
Copyright © 2011-2022 走看看