Maison  >  Article  >  interface Web  >  Partagez un exemple d'utilisation de captchapng pour générer du code de vérification d'image dans Nodejs

Partagez un exemple d'utilisation de captchapng pour générer du code de vérification d'image dans Nodejs

零下一度
零下一度original
2017-05-19 09:28:101911parcourir

Cet article présente principalement l'utilisation du module captchapng dans Nodejs pour implémenter le code de vérification d'image. Il est d'une grande valeur pratique. Les amis dans le besoin peuvent se référer au projet

J'ai rencontré des difficultés lors de la vérification d'image. code. Nodejs ne dispose pas de bibliothèque d'images. Il y en aura dans le futur, mais pas maintenant.

Après avoir cherché sur Internet, il existe plusieurs solutions :

1. Utiliser un programme de code de vérification tiers. Parfois, le projet peut ne pas le permettre ; 2. Utilisez Java ou PHP pour générer des images, appelez Nodejs et utilisez Redies pour partager au milieu

Les deux méthodes ne sont pas idéales. Heureusement, j'ai finalement trouvé une bibliothèque qui peut prendre en charge les codes de vérification d'image Nodejs, bien que. il ne prend en charge que les chiffres. Mais ce n'est pas mal non plus. Le principe est d’utiliser la méthode d’encodage d’image Base64.

L'adresse Gighub de cette bibliothèque est : github.com/GeorgeChan/captchapng

La méthode d'utilisation est disponible sur cette page d'accueil. Je vais l'ajouter ici :

1. Dans le projet Node, ajoutez le module captchapng à package.json ;

2. Utilisez le code suivant :

3. Écrivez un chemin vers ce contrôleur, et la page peut être directement. placé dans la
/**
 * 图片验证码

 * @param req

 * @param res

 * @param next

 */
function randomcodePngController(req , res , next){

  var code = '0123456789';

  var length = 4;

  var randomcode = '';

  for (var i = 0; i < length; i++) {

    randomcode += code[parseInt(Math.random() * 1000) % code.length];
  }
  // 保存到session

  if (null == req.session[sessionConstant.login]) {

    req.session[sessionConstant.login] = {};
  }
  req.session[sessionConstant.login][sessionConstant.randomcode] = randomcode;

  // 输出图片

   var p = new captchapng(80,30,parseInt(randomcode)); // width,height,numeric captcha

  p.color(255, 255, 255, 0); // First color: background (red, green, blue, alpha)

  p.color(80, 80, 80, 255); // Second color: paint (red, green, blue, alpha)

  var img = p.getBase64();

  var imgbase64 = new Buffer(img,&#39;base64&#39;);

  res.writeHead(200, {

    &#39;Content-Type&#39;: &#39;image/png&#39;

  });
  res.end(imgbase64);

}
balise img

L'attribut src a été ajouté. De cette façon, le code de vérification d'image de Nodejs est résolu. J'espère que Nodejs complétera les bibliothèques manquantes dès que possible.

[Recommandations associées]

1.

Tutoriel vidéo en ligne js gratuit

2

Manuel de référence en chinois JavaScript

. 3.

php.cn Dugu Jiujian (3) - Tutoriel vidéo JavaScript

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn