ホームページ ウェブフロントエンド jsチュートリアル JavaScript_javascript スキルに基づいて SMS 確認コードを実装する方法

JavaScript_javascript スキルに基づいて SMS 確認コードを実装する方法

May 16, 2016 pm 03:18 PM

携帯電話、電気通信、その他の通信事業者のオンライン ビジネス ホールを使用する場合、ビジネスの完全性と正確性を確保するために、多くの場合、SMS 認証コードを使用する必要があります。最近、ある州のビジネスニーズにより同様の機能が構築されました。

原理は非常に単純です。つまり、ユーザーが「認証コードの取得」をクリックすると、Ajax は固定数字の文字列を取得し、テキスト メッセージを送信するためにデータベースに書き込み、有効期間を設定するために Cookie を書き込みます。確認コード。

JS リクエスト検証コードは次のとおりです:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

$.ajax({

type: "GET",

url: "../Ajax/smsrandcodetest.ashx?phone=" + phone.val() + "&smsCodeRand=" + num,

success: function(result) {

if (result == "Y") {

alert("验证码已发送至您输入的手机号!有效期5分钟");

RemainTime();

}

else {

alert("验证码获取失败!请重新获取");

}

},

error: function() { alert("error"); }

});

//获取6位随机验证码

function random() {

var num = "";

for (i = 0; i < 6; i++) {

num = num + Math.floor(Math.random() * 10);

}

return num;

}

//验证码有效期倒计时

function RemainTime() {

var iSecond;

var sSecond = "", sTime = "";

if (iTime >= 0) {

iSecond = parseInt(iTime % 300);

if (iSecond >= 0) {

sSecond = iTime + "秒";

}

sTime = "<span style='color:darkorange;font-size:13px;'>" + sSecond + "</span>";

if (iTime == 0) {

clearTimeout(Account);

sTime = "<span style='color:red;font-size:12px;'>验证码已过期</span>";

}

else {

Account = setTimeout("RemainTime()", 1000);

}

iTime = iTime - 1;

}

$("#endtime").html(sTime);

}

ログイン後にコピー

フロントエンドで処理する作業は基本的に上記と同じです。Js で生成された検証コードがルールに準拠しないようにするために、HttpHandler にロジックを追加する必要があります。バックエンド:

1

2

3

4

5

6

7

if (smscoderand.Length != 6) //如果JS生成的随机码不符,则用C#生成随机码

{

smscoderand = GetRandom();

}

//写短信数据,发SMS

//写Cookie,设置验证码有效期,比如5分钟

//注:如果以上都处理成功,返回"Y",处理失败,返回"N"

ログイン後にコピー

ここでは便宜上、認証コードの有効期限検証はCookieを使用して完了します。ビジネスが送信されると、クライアントの Cookie が取得され、存在するかどうかが確認されます。存在しない場合は、有効期限が切れている可能性があります。ビジネスが後で拡大する場合は、データベースの有効性検証や、1 時間または 1 日に送信される確認コードの数を制限する (無制限のテキスト メッセージを送信することはできません) などのその他のルールを追加することを検討できます。

上記は JavaScript SMS 認証コードの実装方法について詳しく説明したもので、皆様のお役に立てれば幸いです。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットツール Tags

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

JavaScriptの文字列文字を交換します JavaScriptの文字列文字を交換します Mar 11, 2025 am 12:07 AM

JavaScriptの文字列文字を交換します

jQuery日付が有効かどうかを確認します jQuery日付が有効かどうかを確認します Mar 01, 2025 am 08:51 AM

jQuery日付が有効かどうかを確認します

jQueryは要素のパディング/マージンを取得します jQueryは要素のパディング/マージンを取得します Mar 01, 2025 am 08:53 AM

jQueryは要素のパディング/マージンを取得します

トップ5の日付操作JSプラグイン トップ5の日付操作JSプラグイン Feb 28, 2025 am 12:34 AM

トップ5の日付操作JSプラグイン

10 jqueryプラグインをチェックする価値があります 10 jqueryプラグインをチェックする価値があります Mar 01, 2025 am 01:29 AM

10 jqueryプラグインをチェックする価値があります

10 jQuery Accordionsタブ 10 jQuery Accordionsタブ Mar 01, 2025 am 01:34 AM

10 jQuery Accordionsタブ

jQueryはscrollbarをdivに追加します jQueryはscrollbarをdivに追加します Mar 01, 2025 am 01:30 AM

jQueryはscrollbarをdivに追加します

カスタムGoogle検索APIセットアップチュートリアル カスタムGoogle検索APIセットアップチュートリアル Mar 04, 2025 am 01:06 AM

カスタムGoogle検索APIセットアップチュートリアル

See all articles