Vorwort
Vor kurzem habe ich an einem Remote -System für intelligentes Wassermesser gearbeitet. Es gibt eine Funktion dieses Prozesses, der auf der Registrierungsseite über Mobiltelefone registriert werden kann. Ich habe lange gesucht, bevor ich den Implementierungsprozess des Mobiltelefonverifizierungscodes grob verstehe. Ich werde es heute mit Ihnen teilen. Ich werde unten nicht viel sagen. Schauen wir uns die detaillierte Einführung zusammen an.
Implementierungsprozess für SMS -Verifizierung Code
1. Construct Mobiltelefonverifizierungscode: Verwenden Sie die vom zufälligen Objekt erforderliche Zufallszahl, um als Verifizierungscode wie 4-Bit-Verifizierungscode zu generieren: eine Zufallszahl zwischen 1000 und 9999;
2. Verwenden Sie die Schnittstelle, um Mobiltelefonnummer und Überprüfungscodedaten an die SMS -Plattform zu senden. Anschließend sendet die SMS -Plattform den Bestätigungscode an die formulierte Mobiltelefonnummer. Die Schnittstellenparameter umfassen im Allgemeinen: Ziel -Mobiltelefonnummer, Zufallsüberprüfungscode (oder einschließlich Ablaufzeit), Plattform -Schnittstellenadresse und Plattformkennwort;
3. Speichern Sie die von der Schnittstelle zurückgegebenen Informationen (normalerweise JSON -Textdaten und müssen dann in das JSON -Objektformat konvertiert werden).
V.
5. Verifikationscodes und andere vom Benutzer ausgefüllte Daten erhalten;
6. Vergleichen Sie, ob der eingereichte Überprüfungscode mit dem Verifizierungscode in der Sitzung übereinstimmt, und stellen Sie fest, ob die Einreichungsaktion innerhalb der Gültigkeitszeit liegt.
7. Der Verifizierungscode ist korrekt und innerhalb der Gültigkeitszeit wird die Anfrage zur Verarbeitung des entsprechenden Unternehmens weitergegeben.
Heute werden wir die ersten 4 Schritte implementieren:
Um den Prozess zu vereinfachen, verwenden wir festen Mobiltelefonverifizierungscode anstelle von zufällig generierten Zahlen als Verifizierungscode
Hier haben wir eine Front-End-Seite und eine Back-End-Logikverarbeitungsseite. Im Folgenden finden Sie zwei Elemente, die Sie kurz erklären müssen:
Front-End-Seite
<body> <h1> <% send = new send (); String postdata = "account = jamesxt & password = 18770918982lkx & mobile = 18770918982 & content ="+java.net.urlencoder.enCode ("Ihr Bestellcode: 4557. Wenn Sie Hilfe benötigen, bitte den Kundenservice", "utf-8"). //out.println(postData); String ret = send.sms (Postdata, "http://sms.106jiekou.com/utf8/sms.aspx"); out.println (ret); // bitte die zurückgegebene Zeichenfolge selbst deserialisieren und Ihre eigene Logik %> </h1> </body> implementierenPostdata: Es sind die ausstehenden Daten, die Sie an die SMS -Serviceplattform senden möchten. Es enthält im Allgemeinen den Benutzerkonto -Namen und das Kennwort des SMS -Serviceplattform -Registranten sowie den vollständigen Inhalt, von dem Sie den SMS -Verifizierungscode und die Informationen, denen der SMS -Verifizierungscode gehört, senden möchten.
String ret = send.sms (Postdata, http://sms.106jiekou.com/utf8/sms.aspx);
Dies dient dazu, die Daten an die Website der SMS -Serviceplattform zu binden, dh auf der Plattform, um die eingereichten Daten für die Verarbeitung zu liefern.
Hintergrundlogikverarbeitungsklasse:
öffentliche Klasse senden {// Es gibt zwei Parameter in der SMS -Methode. Dieser Parameter wird durch die von der Vordergrundseite eingereichte Postdata und die an die erstere gebundene SMS -Serviceadresse ermittelt. Public static String SMS (String Postdata, String posturl) {try {// post post request url url = new url (posturl); HttpurlConnection conn = (httpurlConnection) url.openconnection (); Conn.SetRequestMethod ("Post"); Conn.SetRequestProperty ("Content-Typ", "Anwendung/x-www-form-urlencoded"); Conn.SetRequestProperty ("Verbindung", "Keep-Alive"); Conn.SetUSecaches (falsch); conn.setDooutput (true); Conn.SetRequestProperty ("Inhaltslänge", " + Postdata.length ()); OutputStreamwriter out = new outputStreamWriter (Conn.GetOutputStream (), "UTF-8"); // Die vom Vordergrund über eingereichten Daten in den Ausgabestream, dh die Serviceanforderung, an die SMS -Serviceplattform aus.Write (Postdata) senden. out.flush (); out.close (); // den Antwortstatuscode abrufen if (conn.getResponSCode ()! zurückkehren ""; } // Die String -Zeile des Antwortinhalts erhalten, result = ""; BufferedReader in = neuer BufferedReader (neuer InputStreamReader (Conn.GetInputStream (), "UTF-8")); while ((line = in.readline ())! = null) {result + = line + "/n"; } in.close (); Rückgabeergebnis; } catch (ioException e) {e.printstacktrace (System.out); } zurückkehren ""; }} Schließlich ist die Demo -Quellcode -Adresse beigefügt: http://xiazai.vevb.com/201712/yuanma/mobileregist(vevb.com).rar
Die in dieser Demo verwendete SMS -Dienstanbieteradresse lautet: http://www.106jiekou.com/login/?returnurl=/Member/TRIGGER/Templates/
Zusammenfassen
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Referenzwert für das Studium oder die Arbeit eines jeden hat. Wenn Sie Fragen haben, können Sie eine Nachricht zur Kommunikation überlassen. Vielen Dank für Ihre Unterstützung bei Wulin.com.