visualCaptcha-npm
Node.js NPM package for visualCaptcha's backend serviceInstallation with NPM
You need Node.js installed with npm.npm install visualcaptcha
Run tests
Run next command to start mocha unit tests:npm test
Usage
Initialization
On initialization visualCaptcha function requiresreq.session
session object as first argument:visualCaptcha = require( 'visualcaptcha' )( req.session, defaultImages, defaultAudios );
Where:defaultImages
is optional parameter. Defaults to the array inside ./images.json. The path is relative to ./images/defaultAudios
is optional parameter. Defaults to the array inside ./audios.json. The path is relative to ./audios/
visualCaptcha properties
session
, JSON object — Object that will have a reference for the session object.
imageOptions
, array — All the image options.
audioOptions
, array — All the audio options.
visualCaptcha methods
generate: function( numberOfOptions )
— Generate a new valid visualCaptcha front-end data.numberOfOptions
— is optional parameter for number of generated images, defaults to5
.getFrontendData: function()
— Get data to be used by the frontend.getValidImageOption: function()
— Get the current validImageOption.getValidAudioOption: function()
— Get the current validAudioOption.validateImage: function( sentOption )
— Validate the sent image value with the validImageOption.validateAudio: function( sentOption )
— Validate the sent audio value with the validAudioOption.getImageOptions: function()
— Return generated image options.getImageOptionAtIndex: function(index)
— Return generated image option at index.getAudioOption: function()
— Alias for getValidAudioOption.getAllImageOptions: function()
— Return all the image options.getAllAudioOptions: function()
— Return all the audio options.streamAudio: function( response, fileType )
— Stream audio file. Parameters:
- `response` is a [response object](#response-object);
- `fileType` is audio filetype, defaults to `'mp3'`, can also be `'ogg'`.
streamImage: function( index, response, isRetina )
— Stream image file given an index in the session visualCaptcha images array. Parameters:
- `index` is index of the image in the session images array to send;
- `response` is a [response object](#response-object);
- `isRetina`, boolean, defaults to `false`.
response object
The response object used in.streamAudio()
, and .streamImage()
was thought of for Express' response object, so it needs:.set()
.write()
.status()
.send()
.end()
.headerSent
(boolean)