Maison développement back-end Golang Exemples d'utilisation du code de vérification dans le framework Gin

Exemples d'utilisation du code de vérification dans le framework Gin

Jun 23, 2023 am 08:10 AM
验证码 实例 gin框架

Avec la popularisation d'Internet, les codes de vérification sont devenus un processus nécessaire pour la connexion, l'enregistrement, la récupération du mot de passe et d'autres opérations. Dans le framework Gin, implémenter la fonction de code de vérification est devenu extrêmement simple.

Cet article expliquera comment utiliser une bibliothèque tierce pour implémenter la fonction de code de vérification dans le framework Gin et fournira un exemple de code pour référence aux lecteurs.

1. Installer les bibliothèques dépendantes

Avant d'utiliser le code de vérification, nous devons installer une bibliothèque tierce goCaptcha.

Pour installer goCaptcha, vous pouvez utiliser la commande go get :

$ go get -u github.com/mojocn/base64Captcha
Copier après la connexion

2. Générer un code de vérification

goCaptcha fournit trois types de code de vérification, dont un code de vérification numérique, un code de vérification alphabétique et un code de vérification alphanumérique mixte. Ensuite, nous prendrons le code de vérification numérique comme exemple pour montrer comment générer le code de vérification.

package main

import (
    "fmt"
    "github.com/gin-gonic/gin"
    b64 "github.com/mojocn/base64Captcha"
)

func main() {
    // 以下是生成验证码的代码
    driver := b64.NewDriverDigit(80, 240, 6, 0.7, 80)
    captcha := b64.NewCaptcha(driver, b64.DefaultMemStore)
    id, b64s, err := captcha.Generate()
    if err != nil {
        fmt.Println(err.Error())
    }
    fmt.Println(id, b64s)
}
Copier après la connexion

Dans le code ci-dessus, nous utilisons la fonction NewDriverDigit pour créer un générateur de code de vérification. Les paramètres de la fonction représentent successivement la largeur de l'image, la hauteur, la longueur du code de vérification, l'intensité du bruit et le nombre de lignes d'interférence. Ensuite, nous utilisons la fonction NewCaptcha pour créer un objet code de vérification et appelons la méthode Generate pour générer le code de vérification.

3. Envoyer le code de vérification au client

Après avoir généré le code de vérification, nous devons l'envoyer au client. Dans le framework Gin, vous pouvez utiliser la fonction ResponseWriter.Write pour écrire le corps de la réponse.

package main

import (
    "fmt"
    "github.com/gin-gonic/gin"
    b64 "github.com/mojocn/base64Captcha"
)

func main() {
    router := gin.Default()

    // 以下是生成验证码的代码
    driver := b64.NewDriverDigit(80, 240, 6, 0.7, 80)
    captcha := b64.NewCaptcha(driver, b64.DefaultMemStore)
    router.GET("/captcha", func(c *gin.Context) {
        id, b64s, err := captcha.Generate()
        if err != nil {
            fmt.Println(err.Error())
            c.String(500, err.Error())
            return
        }
        c.SetCookie("captcha_id", id, 300, "/", "localhost", false, true)
        c.Data(200, "image/png", []byte(b64s))
    })

    router.Run(":8080")
}
Copier après la connexion

Dans le code ci-dessus, nous avons créé une route /captcha, transmis l'ID du code de vérification via la méthode SetCookie et écrit le code de vérification de texte généré dans le corps de la réponse via l'objet ResponseWriter.

4. Vérifiez le code de vérification

Lorsque l'utilisateur saisit le code de vérification dans le formulaire et le soumet, nous devons obtenir le code de vérification via l'ID du code de vérification et vérifier son exactitude. Dans Go, nous pouvons utiliser les objets MemStore pour stocker et récupérer les codes de vérification.

package main

import (
    "fmt"
    "github.com/gin-gonic/gin"
    b64 "github.com/mojocn/base64Captcha"
)

func main() {
    router := gin.Default()

    // 以下是生成验证码的代码
    driver := b64.NewDriverDigit(80, 240, 6, 0.7, 80)
    captcha := b64.NewCaptcha(driver, b64.DefaultMemStore)
    router.GET("/captcha", func(c *gin.Context) {
        id, b64s, err := captcha.Generate()
        if err != nil {
            fmt.Println(err.Error())
            c.String(500, err.Error())
            return
        }
        c.SetCookie("captcha_id", id, 300, "/", "localhost", false, true)
        c.Data(200, "image/png", []byte(b64s))
    })

    // 以下是验证验证码的代码
    router.POST("/login", func(c *gin.Context) {
        captchaId, err := c.Cookie("captcha_id")
        if err != nil {
            fmt.Println(err.Error())
            c.String(400, "未生成验证码")
            return
        }
        captchaVal := c.PostForm("captcha_val")
        if captchaVal == "" {
            c.String(400, "请输入验证码")
            return
        }
        if !captcha.Verify(captchaId, captchaVal) {
            c.String(400, "验证码错误")
            return
        }
        c.String(200, "登录成功")
    })

    router.Run(":8080")
}
Copier après la connexion

Dans le code ci-dessus, nous avons créé une route /login, qui obtient d'abord l'ID du code de vérification via Cookie, puis obtient le code de vérification saisi par l'utilisateur via PostForm, et enfin utilise la méthode Verify de l'objet code de vérification pour vérifier l'exactitude du code de vérification.

5. Résumé

Cet article présente comment utiliser goCaptcha pour implémenter la fonction de code de vérification dans le framework Gin. Générez d'abord le générateur de code de vérification via la fonction NewDriverDigit, puis utilisez la fonction NewCaptcha pour créer l'objet de code de vérification et utilisez la méthode Generate pour générer le code de vérification. Enfin, le code de vérification est envoyé au client via ResponseWriter, l'ID du code de vérification est transmis via Cookie, l'objet MemStore est utilisé pour stocker le code de vérification et l'exactitude du code de vérification est vérifiée lors de la connexion.

En développement réel, nous pouvons personnaliser divers paramètres du code de vérification en fonction des besoins et le combiner avec d'autres fonctions pour offrir aux utilisateurs une expérience fonctionnelle plus riche.

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 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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Que dois-je faire si Google Chrome n'affiche pas l'image du code de vérification ? Le navigateur Chrome n'affiche pas le code de vérification ? Que dois-je faire si Google Chrome n'affiche pas l'image du code de vérification ? Le navigateur Chrome n'affiche pas le code de vérification ? Mar 13, 2024 pm 08:55 PM

Que dois-je faire si Google Chrome n'affiche pas l'image du code de vérification ? Lors de la connexion à une page Web à l'aide de Google Chrome, un code de vérification est parfois requis. Certains utilisateurs constatent que Google Chrome ne peut pas afficher correctement le contenu de l'image lorsqu'il utilise des codes de vérification d'image. Qu'est-ce qui devrait être fait? L'éditeur ci-dessous vous expliquera comment gérer le code de vérification de Google Chrome qui ne s'affiche pas. J'espère que cela sera utile à tout le monde ! Introduction à la méthode : 1. Entrez dans le logiciel, cliquez sur le bouton « Plus » dans le coin supérieur droit et sélectionnez « Paramètres » dans la liste d'options ci-dessous pour entrer. 2. Après être entré dans la nouvelle interface, cliquez sur l'option « Paramètres de confidentialité et sécurité » sur la gauche. 3. Cliquez ensuite sur « Paramètres du site Web » à droite

Utilisez le framework Gin pour implémenter la génération automatique de documents API et de fonctions de centre de documents Utilisez le framework Gin pour implémenter la génération automatique de documents API et de fonctions de centre de documents Jun 23, 2023 am 11:40 AM

Avec le développement continu des applications Internet, l’utilisation d’interfaces API devient de plus en plus populaire. Au cours du processus de développement, afin de faciliter l'utilisation et la gestion des interfaces, la rédaction et la maintenance des documents API sont devenues de plus en plus importantes. La manière traditionnelle de rédiger des documents nécessite une maintenance manuelle, qui est inefficace et sujette aux erreurs. Afin de résoudre ces problèmes, de nombreuses équipes ont commencé à utiliser la génération automatique de documents API pour améliorer l'efficacité du développement et la qualité du code. Dans cet article, nous présenterons comment utiliser le framework Gin pour implémenter la génération automatique de documents API et de fonctions de centre de documents. Le gin en est un

Pourquoi ne puis-je pas recevoir le code de vérification sur mon téléphone ? Pourquoi ne puis-je pas recevoir le code de vérification sur mon téléphone ? Aug 17, 2023 pm 02:49 PM

L'incapacité de recevoir le code de vérification sur votre téléphone mobile est causée par des problèmes de réseau, des problèmes de paramètres du téléphone mobile, des problèmes d'opérateur de téléphonie mobile et des problèmes de paramètres personnels. Introduction détaillée : 1. Problèmes de réseau. L'environnement réseau dans lequel se trouve le téléphone mobile est instable ou le signal est faible, ce qui peut empêcher la livraison du code de vérification à temps. 2. Problèmes de configuration du téléphone mobile. ou la fonction vocale du téléphone mobile est accidentellement désactivée, ou le numéro d'envoi du code de vérification est ajouté à la liste noire, ce qui fait que le code de vérification n'est pas reçu normalement 3. Problèmes d'opérateur de téléphonie mobile, l'opérateur de téléphonie mobile peut avoir ; dysfonctionnements ou maintenance, entraînant la non-livraison du code de vérification à temps, etc.

Explication détaillée du proxy inverse et du transfert de requêtes dans le cadre Gin Explication détaillée du proxy inverse et du transfert de requêtes dans le cadre Gin Jun 23, 2023 am 11:43 AM

Avec le développement rapide des applications Web, de plus en plus d'entreprises ont tendance à utiliser le langage Golang pour le développement. Dans le développement Golang, l’utilisation du framework Gin est un choix très populaire. Le framework Gin est un framework Web hautes performances qui utilise fasthttp comme moteur HTTP et possède une conception d'API légère et élégante. Dans cet article, nous approfondirons l'application du proxy inverse et le transfert de requêtes dans le framework Gin. Le concept de proxy inverse Le concept de proxy inverse consiste à utiliser le serveur proxy pour rendre le client

Les numéros virtuels peuvent-ils recevoir des codes de vérification ? Les numéros virtuels peuvent-ils recevoir des codes de vérification ? Jan 02, 2024 am 10:22 AM

Le numéro virtuel peut recevoir le code de vérification. Tant que le numéro de téléphone mobile renseigné lors de l'inscription est conforme à la réglementation et que le numéro de téléphone mobile peut être connecté normalement, vous pouvez recevoir le code de vérification par SMS. Cependant, vous devez être prudent lorsque vous utilisez des numéros de téléphone mobile virtuels. Certains sites Web ne prennent pas en charge l'enregistrement de numéros de téléphone mobile virtuels, vous devez donc choisir un fournisseur de services de numéro de téléphone mobile virtuel classique.

Utiliser le framework Gin pour implémenter l'internationalisation et les fonctions de support multilingue Utiliser le framework Gin pour implémenter l'internationalisation et les fonctions de support multilingue Jun 23, 2023 am 11:07 AM

Avec le développement de la mondialisation et la popularité d'Internet, de plus en plus de sites Web et d'applications ont commencé à s'efforcer d'atteindre l'internationalisation et des fonctions de support multilingues pour répondre aux besoins de différents groupes de personnes. Afin de réaliser ces fonctions, les développeurs doivent utiliser des technologies et des frameworks avancés. Dans cet article, nous présenterons comment utiliser le framework Gin pour implémenter des capacités d'internationalisation et de support multilingue. Le framework Gin est un framework web léger écrit en langage Go. Il est efficace, facile à utiliser et flexible, et est devenu le framework préféré de nombreux développeurs. en plus,

Cas de traitement d'images PHP : Comment implémenter la fonction de code de vérification des images Cas de traitement d'images PHP : Comment implémenter la fonction de code de vérification des images Aug 17, 2023 pm 12:09 PM

Cas de traitement d'images PHP : Comment implémenter la fonction de code de vérification des images Avec le développement rapide d'Internet, les codes de vérification sont devenus l'un des moyens importants pour protéger la sécurité des sites Web. Le code de vérification est une méthode de vérification qui utilise la technologie de reconnaissance d'image pour déterminer si l'utilisateur est un utilisateur réel. Cet article expliquera comment utiliser PHP pour implémenter la fonction de code de vérification des images et sera accompagné d'exemples de code. Introduction Un code de vérification est une image contenant des caractères aléatoires. L'utilisateur doit saisir les caractères dans l'image pour réussir la vérification. Le processus principal de mise en œuvre du code de vérification consiste à générer des caractères aléatoires et à dessiner des caractères dans des images.

Guide de développement PHP : implémentation de la connexion par code de vérification Guide de développement PHP : implémentation de la connexion par code de vérification Jul 01, 2023 am 09:27 AM

Avec le développement d'Internet et la popularité des smartphones, la fonction de connexion par code de vérification est adoptée par de plus en plus de sites Web et d'applications. La connexion par code de vérification est une méthode de connexion qui vérifie l'identité de l'utilisateur en saisissant le code de vérification correct pour améliorer la sécurité et prévenir les attaques malveillantes. Dans le développement PHP, la mise en œuvre d'une simple fonction de connexion par code de vérification n'est pas compliquée et peut être réalisée via les étapes suivantes. Créer une table de base de données Tout d'abord, nous devons créer une table dans la base de données pour stocker les informations du code de vérification. La structure du tableau peut contenir les champs suivants : id : clé primaire à incrémentation automatique du téléphone

See all articles