Dieses Beispiel teilt den spezifischen Code für den Springboot -Verifizierungscode -Login für Ihre Referenz. Der spezifische Inhalt ist wie folgt
Da im Projekt Überprüfungscodes benötigt werden, werde ich zusammenfassen, wie die Projektanforderungen im Projekt ~ ~ Überprüfungscode schnell gelöst werden können. Das Folgende ist ein empfohlenes Beispiel für Überprüfungscodes, damit jeder loslegen kann.
1. Schreiben Sie Verifizierungscode -Toolklasse
Import Java.awt.Color; Import java.awt.font; import Java.awt.graphics; Import Java.awt.image.BuffeedImage; Import Java.io.FileOutputStream; Import Java.io.ioxception; Import Java.IO. @Author ZCT * @Date 6. Februar 2018 * @param * @Desc Grafikverifizierungscode Generierung * */public class verifyutil {// Verifikationscode -Zeichen für private statische endgültige char [] chars = {'0', '1', '2', '3', '4', 5 ',' 6 ',' 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'n', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'y', '}; // Anzahl der Zeichen private statische endgültige int size = 4; // Anzahl der Interferenzlinien private statische endgültige Int -Linien = 5; // Breite private statische endgültige int width = 80; // Höhe private statische endgültige int Höhe = 40; // Schriftgröße private statische endgültige int font_size = 30; /*** Generieren Sie zufälligen Verifizierungscode und Bild* Objekt [0]: Verifizierungscode -Zeichenfolge; * Objekt [1]: Bildcode Bild. */ public static Object [] createImage () {StringBuffer sb = new StringBuffer (); // 1.. Erstellen Sie ein leeres Bild BufferedImage Image = new bufferedImage (Breite, Höhe, bufferedimage.type_int_rgb); // 2. age das Bildpinselgrafik graphic = image.getGraphics (); // 3.. Setzen Sie die Pinselfarbe Graphics.setColor (color.light_gray); // 4. Zeichnen Sie die Rechteck -Hintergrundgrafik. FillRect (0, 0, Breite, Höhe); // 5. zufällige Zeichen Random ran = new random (); für (int i = 0; i <size; i ++) {// Nehmen Sie den zufälligen Zeichenindex int n = ran.nextint (chars.length); // Setzen Sie die zufällige Farbgrafik.setColor (getRandomcolor ()); // Setzen Sie die Schriftgröße Grafik // Zeichengrafik zeichnen. // Zeichen sb.append aufzeichnen (chars [n]); } // 6. Zeichnen Sie die Interferenzlinie für (int i = 0; i <line; i ++) {// Random Color Graphic.setColor (getRandomcolor ()); // Random Color Graphic.Drawline (ran.nextint (width), ran.nextint (Höhe), ran.nextint (width), ran.nextint (Höhe)); } // 7. Rückgabe -Verifizierungscode und Bild geben neues Objekt zurück [] {sb.toString (), Image}; } / *** Zufällige Farbe* / public statische Farbe getRandomcolor () {random ran = new random (); Color color = new color (ran.nextint (256), ran.nextint (256), ran.nextint (256)); Return Color; }}2. Verwenden Sie die Controller -Schicht
Stellen Sie sicher, dass der Benutzername und das Passwort mit dem Verifizierungscode übereinstimmen
/** * Login portal* * @param username Username* @param password Password* @param code Verification code* @param response The callback json data successfully returns 200, and the failed return 500 */ @ApiOperation("Login") @PostMapping("/login") public void adminLoginByPasswword(@ApiParam("Username") @RequestParam String Benutzername, @APIPARAM ("Passwort") @RequestParam String -Passwort, @APIPARAM ("Verifizierungscode") @RequestParam String -Code, httpServletResponse -Antwort, httpServletRequest -Anforderung) {httpSession Session = Request.getSession (); if (session.getAttribute ("imageCode") == null) {Renderfail (Antwort, "Reget -Verifizierungscode"); } else {if (session.getAttribute ("imageCode"). toString (). EqualSignoreCase (Code)) {map <String, Object> user = adninService.CheckadminLogin (Benutzername, Passwort); if (user == null) {renderFail (Antwort, "Anmeldung fehlgeschlagen"); } else {rendersuccess (Antwort, "Anmeldung erfolgreich"); }} else {renderFail (Antwort, "Verifizierungscode -Fehler"); }}}Hier wird die GET -Anforderung verwendet, um den Verifizierungscode zu erhalten. Die Schnittstelle, um den Verifizierungscode zu erhalten, lautet wie folgt
@Apioperation ("Verifizierungscode generieren") @getmaping ("/getCode") public void getCode (httpServletResponse -Antwort, httpServletRequest -Anforderung) löst eine Ausnahme aus {httpSession Session = Request.GetSession (); // Bildwerkzeuge verwenden, um Bilder zu generieren // Der erste Parameter ist der generierte Verifizierungscode, und der zweite Parameter ist das generierte Bildobjekt [] objs = verifyUtil.createimage (); // Verifizierungscode in Sitzung speichern. // das Bild in das Browser buffenedImage -Bild = (bufferedImage) objs [1] ausgeben; Antwort.SetContentType ("Bild/PNG"); OutputStream os = response.getOutputStream (); Imageio.Write (Bild, "PNG", OS); }3.. Code -Test
Hier ist ein Test mit Springboot Swagger2
Das obige ist die GET -Anforderung, den Verifizierungscode zu erhalten. Folgendes ist die Anmeldeprüfung, das Verifizierungsergebnis ist erfolgreich.
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.