Java调用WebService接口实现发送手机短信验证码功能源码分享

近期需要做一个新项目,我做得模块需要用到手机短信验证码的功能,实现登录,付款等功能,其中最主要的是用到了互亿无线(www.ihuyi.com)的短信平台接口WebService客户端接口,一开始摸索不到门路,后来跟平台那边的技术对接之后接入还是比较方便的,最关键是一开始还有很多免费的,接下来我就把源码贴出来分享给大家,大家可以参考一下,方便以后接入~

var InterValObj; //timer变量,控制时间
var count = 120; //间隔函数,1秒执行
var curCount;//当前剩余秒数
var code = ""; //验证码
var codeLength = 6;//验证码长度

function sendMessage() {
    curCount = count;
    var jbPhone = $("#jbPhone").val();
    var jbPhoneTip = $("#jbPhoneTip").text();
    if (jbPhone != "") {
        if(jbPhoneTip == "√ 该手机号码可以注册,输入正确" || jbPhoneTip == "√ 短信验证码已发到您的手机,请查收"){
            // 产生验证码
            for ( var i = 0; i < codeLength; i++) {
                code += parseInt(Math.random() * 9).toString();
            }
            // 设置button效果,开始计时
            $("#btnSendCode").attr("disabled", "true");
            $("#btnSendCode").val("请在" + curCount + "秒内输入验证码");
            InterValObj = window.setInterval(SetRemainTime, 1000); // 启动计时器,1秒执行一次
            // 向后台发送处理数据
            $.ajax({
                type: "POST", // 用POST方式传输
                dataType: "text", // 数据格式:JSON
                url: "UserAction_sms.action", // 目标地址
                data: "jbPhone=" + jbPhone +"&code=" + code,
                error: function (XMLHttpRequest, textStatus, errorThrown) { 

                },
                success: function (data){ 
                    data = parseInt(data, 10);
                    if(data == 1){
                        $("#jbPhoneTip").html("<font color='#339933'>√ 短信验证码已发到您的手机,请查收</font>");
                    }else if(data == 0){
                        $("#jbPhoneTip").html("<font color='red'>× 短信验证码发送失败,请重新发送</font>");
                    }else if(data == 2){
                        $("#jbPhoneTip").html("<font color='red'>× 该手机号码今天发送验证码过多</font>");
                    }
                }
            });
        }
    }else{
        $("#jbPhoneTip").html("<font color='red'>× 手机号码不能为空</font>");
    }
}

//timer处理函数
function SetRemainTime() {
    if (curCount == 0) {                
        window.clearInterval(InterValObj);// 停止计时器
        $("#btnSendCode").removeAttr("disabled");// 启用按钮
        $("#btnSendCode").val("重新发送验证码");
        code = ""; // 清除验证码。如果不清除,过时间后,输入收到的验证码依然有效
    }else {
        curCount--;
        $("#btnSendCode").val("请在" + curCount + "秒内输入验证码");
    }
}

$(document).ready(function() {
    $("#SmsCheckCode").blur(function() {
        var SmsCheckCodeVal = $("#SmsCheckCode").val();
        // 向后台发送处理数据
        $.ajax({
            url : "UserAction_checkCode.action", 
            data : {SmsCheckCode : SmsCheckCodeVal}, 
            type : "POST", 
            dataType : "text", 
            success : function(data) {
                data = parseInt(data, 10);
                if (data == 1) {
                    $("#SmsCheckCodeTip").html("<font color='#339933'>√ 短信验证码正确,请继续</font>");
                } else {
                    $("#SmsCheckCodeTip").html("<font color='red'>× 短信验证码有误,请核实后重新填写</font>");
                }
            }
        });
    });
});

作者:hanjun1213
来源:CSDN
原文:https://blog.csdn.net/hanjun1213/article/details/83539408
版权声明:本文为博主原创文章,转载请附上博文链接!

转载于:https://blog.51cto.com/14046486/2310615

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值