<script language="jscript" runat="server"> 
Array.prototype.get = function(x) { return this[x]; }; 
function parseJSON(strJSON) { return eval("(" + strJSON + ")"); } 
</script>
<%if userid<>"" then
  response.write("<script>alert('已登录!');window.location.href='center.asp';</script>")
  response.end()
  end if
  if request.QueryString("action")="getsms" then
    '发送短信
 dim tel,data,smscon
 tel=request.QueryString("tel")
 if tel="" then
    response.Write("{status:0,code:0}")
    response.End()
 end if
 Dim zNum,shijian,smsurl,accountSid,smsContent,TOKEN,sig,timestamp
 smsurl="https://api.miaodiyun.com/20150822/industrySMS/sendSMS"
 accountSid="accountSid"
 TOKEN="TOKEN"
 shijian=now()
 timestamp=day_date()
 sig=lcase(md5(accountSid&TOKEN&timestamp,32))
 Randomize Timer
 zNum=Int(899999*Rnd+100000)
 
 session("smscode")=zNum
 session("time")=shijian
 smsContent="【签名】您的验证码为"&zNum&",请于20分钟内正确输入,如非本人操作,请忽略此短信。"
 
 data="accountSid="&accountSid&"&smsContent="&smsContent&"&to="&tel&"&timestamp="&timestamp&"&sig="&sig&"&respDataType=JSON"
 dim restr
    'response.Write("<br>"&timestamp)
 'response.Write(data)
 restr=getHTTPPage(smsurl,data)
 'response.Write(restr)
 Set obj = parseJSON(restr)
 if obj.respCode="00000" then
   response.Write("{status:1,code:0}")
 else
   response.Write("{status:0,code:"&obj.respCode&"}")
 end if
    response.End()
  end if
 
Function getHTTPPage(url,data)
 Dim Http
 Set Http = Server.CreateObject("MSXML2.XMLHTTP")
 Http.Open "POST", url, False
 Http.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
 Http.send(data)
 If Http.readystate <> 4 Then
 Exit Function
 End If
 getHTTPPage = BytesToBstr(Http.responseBody, "GB2312")
 Set Http = Nothing
 If Err.Number <> 0 Then Err.Clear
End Function
 
Function BytesToBstr(body, Cset)
 Dim objstream
 Set objstream = Server.CreateObject("adodb.stream")
 objstream.Type = 1
 objstream.Mode = 3
 objstream.Open
 objstream.Write body
 objstream.Position = 0
 objstream.Type = 2
 objstream.Charset = Cset
 BytesToBstr = objstream.ReadText
 objstream.Close
 Set objstream = Nothing
End Function

function dtos(num)
  dtos=cstr(num)
  dim i
  'response.Write(num&":"&len(dtos)&"<br>")
  if len(dtos)<2 then
    for i=1 to 2-len(dtos)
   'response.Write("("&i&")")
      dtos="0"&dtos
   'response.Write(dtos)
    next
  else
     dtos=dtos
  end if
  'dtos=cint(dtos)
end function

function day_date() 'response.Write(month(now)&"-"&day(now)&"-"&hour(now)&"-"&minute(now)&"-"&second(now))
  day_month=dtos(month(now))
  day_day=dtos(day(now))
  day_hour=dtos(hour(now))
  day_minute=dtos(minute(now))
  day_second=dtos(second(now))
  day_date=cstr(year(now))&cstr(day_month)&cstr(day_day)&cstr(day_hour)&cstr(day_minute)&cstr(day_second)
 
end function
%>

asp发送短信验证码 pst方式的更多相关文章

  1. Java 实现手机发送短信验证码

    Java 实现手机发送短信验证码 采用引入第三方工具的方式,网上查了半天,发现简单的实现方式便是注册一个中国网建的账号,新建账号的时候会附带赠几条免费短信,彩信 ,之后想要在使用就得花钱了.简单的操作 ...

  2. 超实用的JavaScript代码段 Item4 --发送短信验证码

    发送短信验证码 实现点击“发送验证码”按钮后,按钮依次显示为“59秒后重试”.“58秒后重试”…直至倒计时至0秒时再恢复显示为“发送验证码”.在倒计时期间按钮为禁用状态 . 第一步.获取按钮.绑定事件 ...

  3. Laravel5中使用阿里大于(鱼)发送短信验证码

    在做用户注册和个人中心的安全管理时,我实现借助第三方短信平台(阿里大于(鱼))在Laravel框架中进行手机验证的设置:阿里大于,是阿里通信旗下优质便捷的云通信服务平台,整合了三大运营商的通信能力,为 ...

  4. 微信小程序发送短信验证码完整实例

    微信小程序注册完整实例,发送短信验证码,带60秒倒计时功能,无需服务器端.效果图: 代码: index.wxml <!--index.wxml--> <view class=&quo ...

  5. java + maven 实现发送短信验证码功能

    如何使用java + maven的项目环境发送短信验证码,本文使用的是榛子云短信 的接口. 1. 安装sdk 下载地址: http://smsow.zhenzikj.com/doc/sdk.html ...

  6. android发送短信验证码并自动获取验证码填充文本框

    android注册发送短信验证码并自动获取短信,截取数字验证码填充文本框. 一.接入短信平台 首先需要选择短信平台接入,这里使用的是榛子云短信平台(http://smsow.zhenzikj.com) ...

  7. java 阿里云接口实现发送短信验证码

    此刻自己做的小项目中,需要用到手机发送短信验证码实现注册功能,于是就去阿里云注册了账号,并实现随机发送验证码的功能 第一步:在阿里云官网登录注册   已有支付宝或淘宝的账号可以直接登录,最后需要实名认 ...

  8. Yii2发送短信验证码完全解决方案

    概述 在做项目的时候,需要用到短信发送验证码功能.不能不说Yii2的牛逼,很容易就搞定了.下面我整理一下具体功能和流程,分享给大家. 主要功能 通过Yii2 rules验证手机号 通过js验证是否为手 ...

  9. 阿里云短信服务发送短信验证码(JAVA开发此功能)

    开发此功能需注册阿里云账号,并开通短信服务(免费开通) 充值后,不会影响业务的正常使用!(因为发送验证类短信:1-10万范围的短信是0.045元/条).开发测试使用,充2块钱测试足够了 可参考阿里云官 ...

随机推荐

  1. Vue中如何将数据传递到下一个页面(超级简单哒)

    先展示效果:注意URL中值是有变化的 一:在goodslist.vue文件夹绑定 <router-link :to="'/goodsinfo/'+subitem.artID" ...

  2. POJ 3735 Training little cats 矩阵快速幂

    http://poj.org/problem?id=3735 给定一串操作,要这个操作连续执行m次后,最后剩下的值. 记矩阵T为一次操作后的值,那么T^m就是执行m次的值了.(其实这个还不太理解,但是 ...

  3. HTML5利用FormData对象实现显示进度条的文件上传

    摘自:https://blog.csdn.net/q1056843325/article/details/53759963 自己做是按这个实现的,兼容性还不错 完整简约的解决方案 下面的代码清单是包括 ...

  4. HangFire 定时任务

    https://www.cnblogs.com/ecin/p/6201262.html#%E5%9F%BA%E4%BA%8E%E9%98%9F%E5%88%97%E7%9A%84%E4%BB%BB%E ...

  5. linq动态分页排序

    if (!string.IsNullOrEmpty(order) && !string.IsNullOrEmpty(dir))//判断排序的字段名称和排序的类型是否为空 { if (d ...

  6. 假如m是奇数,且m>=3,证明m(m² -1)能被8整除

    m是奇数,且m>=3 =>m可以用表达式2n-1,n>=2 =>m²-1 = (2n-1)²-1 =>m²-1 = 4n²-4n+1-1 =>m²-1 = 4n²- ...

  7. 【Python图像特征的音乐序列生成】关于音乐生成的思路转变

    在前几天的讨论会上,有师兄指出原来的方法实在是很难训练,所以我改进了音乐生成的思路. 首先,我用LSTM生成的一定是一段音乐的序列化表达,那么我就可以用成型的一些数据集去训练LSTM.为了避免生成的音 ...

  8. java面试题(杨晓峰)---第八讲谈谈Vector,ArrayList,LinkedList有何区别?

    Vector,ArrayList,LinkedList均为线性的数据结构,但是从现实方式与应用场景中又存在差别. 1 底层实现方式 ArrayList内部数组来实现,LinkedList内部采用双向链 ...

  9. Spoj REPEATS 后缀自动机+set

    REPEATS - Repeats 链接:http://www.spoj.com/problems/REPEATS 题意:求S串中某个子串连续循环次数最多的次数. 想法: 从暴力开始,枚举所有串,求出 ...

  10. NGUI类之间的关系架构

    NGUI Drawcall 1.使用同一个altals的元素尽量放在同一个UIPanel下面,在NGUI中,它消耗的drawcall是以每个Panel为独立计算单位进行计算的. 2.如果一个UIPan ...