使用nodejs怎么实现一个验证码生成功能

今天就跟大家聊聊有关使用nodejs怎么实现一个验证码生成功能,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

varhttp=require('http');
varqs=require('querystring');

//配置您申请的appKey和openId
app_key="***";
open_id="***";

functionrequest_content(request_url,port,params,method){

varpath=request_url;
if(!!params){
varcontent=qs.stringify(params);
path=request_url+'?'+content;
}

varoptions={
port:port,
path:path,
method:method
};

if(method.toLowerCase()=='post'){
options['headers']="Content-Type':'application/x-www-form-urlencoded;charset=UTF-8";
}

varreq=http.request(options,function(res){
res.setEncoding('utf8');
res.on('data',function(chunk){
console.log(chunk);
});
});

req.on('error',function(e){
console.log('problemwithrequest:'+e.message);
});

req.end();
}

functionmain(){

vardomain="http://api.xiaocongjisuan.com/";
varport=8080;//http对应80端口,https对应443端口,请使用者自己改正
varservlet="develop/verificationcode/get";
varmethod="get";
varrequest_url=domain+servlet;

varparams={};
params['appKey']=app_key;
params['openId']=open_id;

//变动部分
params["w"]=200;
params["h"]=50;
params["len"]=7;
params["fontSize"]=40;

request_content(request_url,port,params,method);
}

main();

其他语言的实现方式比如php,java,python等可以点这里查看 ,这里暂且附上比较小众的GO语言的实现方式:

使用nodejs怎么实现一个验证码生成功能

packagemain

import(
"io/ioutil"
"net/http"
"net/url"
"fmt"
"strings"
)

//配置您申请的appKey和openId
constAPP_KEY="yours";
constOPEN_ID="yours";

funcrequestContent(requestUrlstring,paramsurl.Values,methodstring)(rs[]byte,errerror){

ifstrings.ToUpper(method)=="GET"{
returnget(requestUrl,params)
}
returnpost(requestUrl,params)
}

//get网络请求
funcget(requestUrlstring,paramsurl.Values)(rs[]byte,errerror){
varUrl*url.URL
Url,err=url.Parse(requestUrl)
iferr!=nil{
fmt.Printf("解析url错误:\r\n%v",err)
returnnil,err
}
//如果参数中有中文参数,这个方法会进行URLEncode
Url.RawQuery=params.Encode()
resp,err:=http.Get(Url.String())
iferr!=nil{
fmt.Println("err:",err)
returnnil,err
}
deferresp.Body.Close()
returnioutil.ReadAll(resp.Body)
}

//post网络请求,params是url.Values类型
funcpost(requestUrlstring,paramsurl.Values)(rs[]byte,errerror){
resp,err:=http.PostForm(requestUrl,params)
iferr!=nil{
returnnil,err
}
deferresp.Body.Close()
returnioutil.ReadAll(resp.Body)
}

funcmain(){

domain:="http://api.xiaocongjisuan.com/"

servlet:="develop/verificationcode/get"
method:="get"
requestUrl:=domain+servlet

//初始化参数
params:=url.Values{}

params.Set("appKey",APP_KEY)
params.Set("openId",OPEN_ID)

//变动部分
params.Set("w","200")
params.Set("h","50")
params.Set("len","7")
params.Set("fontSize","40")


//发送请求
data,err:=requestContent(requestUrl,params,method)
fmt.Println(string(data))
iferr!=nil{
fmt.Printf("解析url错误:\r\n%v",err)
}
}

看完上述内容,你们对使用nodejs怎么实现一个验证码生成功能有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注恰卡编程网行业资讯频道,感谢大家的支持。

发布于 2021-04-15 01:55:09
收藏
分享
海报
0 条评论
183
上一篇:如何使用pandas合并excel 下一篇:怎么在laravel中添加前台跳转成功页面
目录

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码