【Node.js】之第三方中间件实现验证码

Node.js第三方中间件实现验证码

svg-captcha验证码

使用:

(1)下载
npm i svg-captcha --save
(2)引入

不用app.use

const svgCaptcha=require("svg-captcha")
(3)创建一个ico
let svgico =svgCaptcha.create()
// res.type("svg") 设置渲染的数据的类型
/*
 	可以传一个对象作为参数
   let svgico= svgCaptcha.create({
        size:6,//验证码个数
        ignoreChars:"0o1Il",//忽略的字符
        noise:10,//几根线
        color:false,//字体是否有颜色
        background:"red",//背景色
    })
*/
(4)代码实例

在这里插入图片描述
login.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Login</title>
</head>
<body> 
    <form action="" method="get">
        验证码:<img src="http://localhost:3000/login" alt="12" width="300" height="100">
    </form>
</body>
</html>

verification.js

const express = require('express');
const svgCaptcha = require('svg-captcha');
let app = express();

app.get("/login", (req, res) => {
    let svgico = svgCaptcha.create({
        size: 6,
        ignoreChars: "0o1I1",
        noise: 5,
        color: true,
        background: "#eee"
    })
    // console.log(svgico);
    /*{
         text 给后端去验证
         data 给前端显示
     } 
     create可以接收一个对象作为参数
     {
         size:6,//验证码个数
         ignoreChars:"0o1Il",//忽略的字符,不会出现在验证码里
         noise:10,//几根线
         color:false,//字体是否有颜色
         background:"red",//背景色
     }
     */
     res.type("svg"); // 单独设置文件类型
     res.send(svgico.data)
})
app.listen(3000, () => {
    console.log("Port 3000 is listening...");
})
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Node.js中安装第三方库有多种方式。一种常见的方式是使用npm(Node Package Manager)来安装库。npm是Node.js的包管理工具,它允许您在项目中添加,更新和删除依赖项。 要安装一个第三方库,您可以在终端中使用以下命令: npm install 库名称 例如,如果要安装名为"express"的库,您可以运行以下命令: npm install express 此命令将从npm仓库下载并安装"express"库及其相关依赖项。安装完成后,您就可以在您的Node.js项目中使用该库了。 另一种常见的方式是手动下载库的源代码或二进制文件,并将其添加到您的项目中。这种方式适用于一些没有发布到npm仓库的库,或者您需要使用特定版本的库。 例如,您可以从库的GitHub页面上下载源代码,并将其放置在您的项目目录中的相应位置。然后,您可以在您的代码中使用require函数来引入该库。 请注意,无论使用哪种方式安装库,您都需要在代码中明确引入该库,并按照库的文档和示例来正确使用它。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Nodejs插件引入第三方动/静态链接库(Libtorch)的踩坑记录](https://blog.csdn.net/daydream13580130043/article/details/118359430)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值