使用腾讯云TCB云函数实现生成随机验证码功能

2020-11-07 23:37:26

本文是云函数的有趣实践,主要功能为返回一个 svg 格式的随机验证码图片

最近在玩云函数,发现官方文档上说了 http 访问服务时可以使用集成响应返回二进制文件。

既然云函数可以返回图片,那么也可以直接返回一个验证码呀。说干就干。

实现思路

使用 svg-captcha 来生成随机验证码然后再 base64 编码之后返回给前端即可。

核心代码


'use strict';
const svgCaptcha = require('svg-captcha')
exports.main = async (event, context) => {
    var codeConfig = {
        size: 5,// 验证码长度
        ignoreChars: '0o1i', // 验证码字符中排除 0o1i
        noise: 2, // 干扰线条的数量
        height: 44
    }
    var captcha = svgCaptcha.create(codeConfig)
    var svgCon = captcha.data
    //svg转base64;
    let src = Buffer.from(svgCon).toString('base64')
    return {
        isBase64Encoded: true,
        statusCode: 200,
        headers: {
            "content-type": "image/svg+xml"
        },
        body: src
    }
};

实例效果


注意图中红框的报错,问了腾讯云开发(TCB)团队的大佬说是插件报错,函数是执行成功了的。

访问实例地址

http://tcb.xuedingmiao.com/verification_code

参考资料

本文链接:
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-ND 3.0 许可协议。可自由转载、引用,但需署名作者且注明文章出处。如转载至微信公众号,请在文末添加作者公众号二维码。

扫描下方二维码阅读当前文章

浏览器、微信扫码
微信小程序

评 论:

好文推荐
极客之路公众号
加入两百人技术交流群
探讨前端、小程序开发及逆向、微信开发...
一起学习,共同成长
添加博主微信备注"加群"
小程序&uniapp逆向服务群(付费)
适用于原生小程序及基于uniapp开发的小程序
反混淆源码 + 还原为易读vue代码
添加助手微信拉你进群
专属定制服务,降低您的开发成本
微信情报 更多 >
    每天进步一点点~