本篇主要介紹了node-ccap模組產生captcha驗證碼,小編覺得蠻不錯的,現在分享給大家,也給大家做個參考。一起跟著小編過來看看吧
準備工作如下:
##這個函式庫依賴python2.7.X和node-gyp,請先安裝1、Python
安裝完後將安裝目錄如「C:\Python27」加入系統環境變數PATH。2、node-gyp安裝
全域安裝node-gyp。執行npm install -g node-gyp。3、安裝ccap
npm install ccap
https:// github.com/DoubleSpout/ccap
2、效能:在2cpu的linux 64位元伺服器上產生驗證碼速度可以達到1200次/秒,測試產生的圖片是BMP的,jpeg的圖片驗證碼產生速度大約在600次/秒。 3、宣告方法:var ccap = require('ccap'); var captcha1 = ccap(); var captcha2 = ccap(width, height, offset); var captcha3 = ccap({ width:256,//set width,default is 256 height:60,//set height,default is 60 offset:40,//set text spacing,default is 40 quality:100,//set pic quality,default is 50 generate:function(){//Custom the function to generate captcha text //generate captcha text here return text;//return the captcha text } });
自訂函數return的字串作為圖片驗證碼的內容,預設是0-9,A-Z的6位元隨即字串。
理論上可以生產很多不同的ccap的實例,而且他們之間互相沒有影響,所以即使是透過cluster開啟多進程的node同時生產驗證碼也不存在互相鎖定的影響。 對於圖片品質只對jpeg圖片有效,如果沒有安裝任何jpeg的lib庫的話,只能使用bmp未壓縮圖形了,體積比較大,但是生成速度比較快。 4、使用方法,get():var ccap = require('ccap'); var captcha = ccap(); var ary = captcha.get();//ary[0] is captcha's text,ary[1] is captcha picture buffer. var text = ary[0]; var buffer = ary[1];
["captcha text","picture buffer"]
var http = require('http'); var ccap = require('ccap')();//Instantiated ccap class http.createServer(function (request, response) { if(request.url == '/favicon.ico')return response.end('');//Intercept request favicon.ico var ary = ccap.get(); var txt = ary[0]; var buf = ary[1]; response.end(buf); console.log(txt); }).listen(8124); console.log('Server running at http://127.0.0.1:8124/');
以上是node-ccap模組怎麼產生captcha驗證碼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!