Maison > développement back-end > Golang > Un guide d'utilisation du code de vérification Golang

Un guide d'utilisation du code de vérification Golang

PHPz
Libérer: 2023-03-30 09:23:19
original
2027 Les gens l'ont consulté

Avec le développement continu de la technologie Internet et des scénarios d'application, les codes de vérification sont devenus l'une des technologies de sécurité les plus importantes du système Internet actuel. Dans les applications Web développées en langage Golang, comment utiliser les codes de vérification pour garantir la sécurité de la connexion, de l'enregistrement et d'autres opérations des utilisateurs ? Cet article donnera un guide sur l'utilisation du code de vérification Golang pour votre référence.

1. La bibliothèque de codes de vérification de Golang

golang fournit une multitude de bibliothèques de codes de vérification tierces pour nous aider à développer des fonctions de code de vérification, parmi lesquelles les plus populaires sont :

  1. Golang.org/x/image

Golang.org/x/image est la bibliothèque de traitement d'images officiellement fournie par golang. Il fournit divers outils de traitement des images, notamment des codes de vérification. Dans cette bibliothèque, nous pouvons utiliser la bibliothèque freetype pour générer des codes de vérification de texte, ou utiliser la bibliothèque gif ou la bibliothèque png pour générer des codes de vérification d'image, etc.

  1. Github.com/dchest/captcha

Github.com/dchest/captcha est une bibliothèque de codes de vérification open source qui génère des codes de vérification numériques et alphabétiques basés sur le langage go et la bibliothèque de traitement d'images. Dans le même temps, cette bibliothèque fournit également des options de code de vérification personnalisables, telles que la longueur, la police, l'arrière-plan, etc.

  1. Github.com/mojocn/base64Captcha

Github.com/mojocn/base64Captcha est une bibliothèque de codes de vérification développée sur la base du langage go. Elle générera différents types de codes de vérification selon différentes configurations, telles que des chiffres, des lettres et. Chinois, etc. Dans le même temps, la bibliothèque prend également en charge une variété de modèles d'arrière-plan de code de vérification et d'effets d'interférence, et peut renvoyer des images de code de vérification en codage base64.

2. Générer le code de vérification Golang

Ici, nous prenons Github.com/mojocn/base64Captcha comme exemple pour expliquer comment utiliser Golang pour générer du code de vérification.

  1. Installez la bibliothèque base64Captcha

Entrez la commande suivante dans le terminal :

go get -u github.com/mojocn/base64Captcha
Copier après la connexion
  1. Créez et configurez la configuration du code de vérification

L'exemple de code est le suivant :

config := captcha.ConfigCharacter{
    Height:             60,
    Width:              240,
    Mode:               captcha.CaptchaModeNumberAlphabet,
    ComplexOfNoiseText: captcha.CaptchaComplexLower,
    ComplexOfNoiseDot:  captcha.CaptchaComplexLower,
    IsShowHollowLine:   false,
    IsShowNoiseDot:     true,
    IsShowNoiseText:    true,
    IsShowSlimeLine:    false,
    ChLen:              4,
}
Copier après la connexion

Dans cet exemple, nous avons créé un configuration appelée config Configuration du code de vérification, qui configure la hauteur, la largeur, la couleur, les lignes d'interférence, le nombre de caractères, etc. du code de vérification.

  1. Générer un code de vérification et renvoyer le résultat au front end

Le code pour générer le code de vérification est le suivant :

id, b64s, err := captcha.Generate(base64Captcha.DriverString, config)
Copier après la connexion

Ici, on utilise la fonction captcha.Generate() pour générer un code de vérification et enregistrer le résultat dans la variable b64s. captcha.Generate()函数生成了一个验证码,并将结果保存在变量b64s中。

最后,我们将验证码的id和base64编码后的字符串b64s返回给前端,供前端展示。

三、验证golang验证码

在前端将验证码输入之后,我们需要在后端对验证码进行验证。

示例代码如下:

// verifyCode 为前端提交的验证码值
// verifyID 为前端提交的验证码ID
isCorrect := captcha.VerifyString(verifyID, verifyCode)
if !isCorrect {
    // 验证码不正确
} else {
    // 验证码正确
}
Copier après la connexion

在这个示例中,我们使用了captcha.VerifyString()

Enfin, nous renvoyons l'identifiant du code de vérification et la chaîne b64s codée en base64 au front-end pour affichage par le front-end.

3. Vérifiez le code de vérification golang

Après avoir entré le code de vérification sur le front-end, nous devons vérifier le code de vérification sur le back-end. 🎜🎜L'exemple de code est le suivant : 🎜rrreee🎜Dans cet exemple, nous utilisons la fonction captcha.VerifyString() pour vérifier si le code de vérification soumis par le front-end est correct. Si le code de vérification est correct, il renvoie vrai, sinon il renvoie faux. 🎜🎜Résumé🎜🎜Cet article présente principalement comment Golang utilise les codes de vérification pour améliorer la sécurité des applications Web, et prend Github.com/mojocn/base64Captcha comme exemple pour expliquer comment générer et vérifier les codes de vérification Golang. J'espère que cet article sera utile aux débutants qui apprennent le golang. 🎜

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!

source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal