• 全都有综合资源网

    分享赚钱

    一个专业的免费资源网

    每天更新100+优质资源

  • 手机版二维码

    随时手机查素材

  • 扫描二维码

    加入官方微信群

如何防止平台被刷短信 thinkphp 短信通知以及信息验证码接入

技术文章 每日更新
2024-6-5 22:31 52人浏览 0人回复
原作者: 全都有综合资源网 来自: 全都有综合资源网 收藏 分享 邀请
摘要

信息通知是当今网络信息时代客户联系方式的重要平台。对于多元化的网络社会,越来越多的新型通知方式不断涌现,微信公众号码、语音通知、短信通知、电子邮件通知等等,对于中小型平台,我认为最经济实用、传递速度最 ...

   信息告诉是现今收集信息时代客户联系方式的重要平台。对于多元化的收集社会,越来越多的新型告诉方式不竭出现,微信公众号码、语音告诉、短信告诉、电子邮件告诉等等,对于中小型平台,我以为最经济适用、传递速度最高大概最原始的短信告诉。所以对于低级技术职员来说,对于短信告诉这一部分必须有一定的领会,包括平台质量、发送要求和对接。

若何避免平台被刷短信 thinkphp 短信告诉以及信息考证码接入9270 作者:全都有综合资本网 来历:全都有综合资本网 公布时候:2024-6-5 22:31

thinkphp 短信告诉以及考证码接入【平台企业怎样可以避免被刷短信】
从短信平台的利用来看,第一,阿里云短信,最廉价,送货实时,假如你有阿里云帐号,这是第一挑选; 第二,收集短信,不用报告,短信相对价格也可以,送货速度只要客户办事到渠道106后根基5秒,假如你不想认证用户保举利用收集,也不用实名,短信不用报告,对接也很方便,送货速度和价格都可以接管。
接下来我将以thinkphp为例,演示若何从短信注册考证码对接短信平台。注册考证码相对复杂。这里我不能不说一件事。若何避免他人窃取短信?由于从松散的角度来看,注册链接是表露给一切用户的部分,是短信最轻易被窃取的地方。一般发送前会增加一个图形考证码。假如图形考证码和手机号码判定正确,则可以发送成功;传输成功后,收到考证码后,必须做出两个判定。第一,收到的手机号码能否是输入的号码,第二,考证码能否与传输时天生的考证码分歧。

话不多说,间接上代码,第一部分,thinkphp 前台 HTML 页面间接嵌入代码,经过 js 触发考证码的发送,以及倒计时重新发送。


<script type="text/javascript">

var wait = 60;

function time(o) {

if ($("#phone").val() == "") {
layer.msg("请填写手机号");
return false;
}

if ($("#code").val() == "") {
layer.msg("请填写图形考证码");
return false;
}
$.post("{:U('Reg/sendPhone')}", { phone: $("#phone").val() ,code: $("#code").val()}, function(msg) {

if(msg.sf==0){
layer.msg("考证码已经发送,留意查收");
}else{
layer.msg("发送失利");
}
},'json');

okssss(o);
}
var wait = 60;
function okssss(o) {
if (wait == 0) {
$(o).removeAttr("disabled");
$(o).val("免费获得考证码");
wait = 120;
} else {
$(o).attr("disabled", true);
$(o).val("重新发送(" + wait + ")");
wait--;
setTimeout(function() {
okssss(o);
},
1000);
}
}
</script>

前台 html 页面经过{:U('Reg/sendPhone')}方式来提交发送请求,sendphone 里面要加一个图形考证码的判定,然后 session 保存此次请求的手机号码和随机天生的考证码,以备提交表格的时辰利用。

sendPhone 方式的代码以下:

if (IS_POST) {if (IS_POST) {        $phone = $_POST['phone'];  $code = $_POST['code'];if(!$this->check_verify($code)){                $this->ajaxReturn( array('nr'=>'考证码毛病!','sf'=>1) );             } else{         $rand =rand(100000,900000);                session('CHECK_CODE',$rand);        session('PHONE_NUM',$phone);        $info = sendSMS($phone,"你的考证码是".$rand.",请勿泄露。【汇鑫联华社区】");        preg_match('/stat=([\d]{3})/', $info, $matches);        if(is_array($matches) && $matches[1] == 100){            session('check_status',1);        }else{             session('check_status',0);        }     $this->ajaxReturn(array('nr'=>'发送成功!','sf'=>0)); }}

上面是全部焦点发送流程,那末其中 sendSMS 是短信平台的 API 发送接口,分歧的平台能够发送的方式纷歧样,有 post 和 get 一般这两种方式发送,然后返回成果也要按照分歧的短信平台返回值来判定能否发送成功,上面案例中返回值是 100 就证实发送成功。以下附一段 sendSMS 代码


function sendSMS($mobile,$content,$mobileids='',$http='http://xxxx 短信平台 API 接口/'){
$uid = 'xxx';////短信平台账号
$pwd = 'xxxx';////短信平台密钥
return send($http,$uid,$pwd,$mobile,$content,$mobileids);

}

function send($http,$uid,$pwd,$mobile,$content,$mobileids,$time='',$mid='')
{

$data = array(
'uid'=> $uid, //用户账号
'pwd'=>md5($pwd.$uid), //MD5 位 32 密码,密码和用户名拼接字符
'mobile'=>$mobile, //号码
'content'=>$content, //内容
'mobileids'=>$mobileids,
'time'=>$time, //按时发送
);
$re= postSMS($http,$data); //POST 方式提交
file_put_contents("sms.txt", $re.$content);
return $re;
}

function postSMS($url,$data='')
{
$port="";
$post="";
$row = parse_url($url);
$host = $row['host'];
$port = $row['port'] ? $row['port']:80;
$file = $row['path'];
while (list($k,$v) = each($data))
{
$post .= rawurlencode($k)."=".rawurlencode($v)."&"; //转 URL 标准码
}
$post = substr( $post , 0 , -1 );
$len = strlen($post);
$fp = @fsockopen( $host ,$port, $errno, $errstr, 10);
if (!$fp) {
return "$errstr ($errno)\n";
} else {
$receive = '';
$out = "POST $file HTTP/1.1\r\n";
$out .= "Host: $host\r\n";
$out .= "Content-type: application/x-www-form-urlencoded\r\n";
$out .= "Connection: Close\r\n";
$out .= "Content-Length: $len\r\n\r\n";
$out .= $post;
fwrite($fp, $out);
while (!feof($fp)) {
$receive .= fgets($fp, 128);
}
fclose($fp);
$receive = explode("\r\n\r\n",$receive);
unset($receive[0]);
return implode("",$receive);
}
}


上面是一个短消息平台的 API 发送接口的演示。需要留意的是,一些短消息平台在发送时需要分歧的编码。您必须对按照短消息平台的编码要求发送的内容停止预处置,否则就是胡说八道。接下来,当我们提交表单时,我们可以肯定 SMS 考证码和接收到的电话号码能否与发送请求的电话号码不异。
综上所述,短信界面要留意以下几点:1。为了避免短信被盗,最好加一个图形考证码。2.增加手机号码能否分歧的判定,避免手机代收的情况。

©版权免责声明
1、本站所有资源均来自用户上传及互联网。 如有侵权,请联系站长!
2、分享目的仅供大家学习交流。 下载后必须在24小时内删除!
3、不得用于非法商业目的或违反国家法律。 否则,后果自负!
4、本站提供的源代码、模板、插件等资源不包含技术服务。 敬请谅解!
5.如果出现无法下载、无效或有广告的链接,请联系管理员寻求帮助!
6、本站资源价格仅用于赞助,所收取的费用仅用于维持本站日常运营!
7、如果遇到加密压缩包,请使用WINRAR解压。 如果遇到无法解压的加密压缩包,请联系管理员!
8、由于精力有限,很多源代码无法详细测试(解密),部分源代码无法区分为病毒或误报,所以没有进行修改。 请在使用前进行筛选。

路过

雷人

握手

鲜花

鸡蛋
热门教程
专业的免费源码资源分享平台
每天更新100+资源

招募版主发工资

  • 官方在线客服

    QQ客服:红颜

    点击交谈

    在线客服:良子

    点击交谈

    在线客服:闵月

    点击交谈
  • 上海市虹口区海伦中心B座4F4055-4056室

  • 手机扫码查看手机版

    手机查找资源更方便

  • 扫一扫关注官方微信公众号

    加入官方微信

一个专业的免费源码资源互联网分享平台 ©2001-2024 https://www.douyouvip.com全都有综合资源网( 豫ICP备2024057239号-1 )赞助会员|网站地图 HTML
全都有综合资源网,WordPress主题PHP源码,PHP网站源码,网站模板,软件源码,网站源码免费下载,免费网站源码,网站源码模板,免费网站源码下载,wp免费源码,wp免费主题下载,PHP企业网站源码,软件源码下载