您现在的位置是:主页 > news > 网站备案有哪些资料/西安区seo搜索排名优化
网站备案有哪些资料/西安区seo搜索排名优化
admin2025/5/6 21:05:15【news】
简介网站备案有哪些资料,西安区seo搜索排名优化,免费网站空间论坛,网站开发报价单 excel短信验证前端页面前端异步请求后端处理请求请求第三方发送短信使用方式具体使用完整代码前端页面 前端异步请求 输入手机号,点击‘免费获取验证码’,发送异步请求 //发送短信 function send_sms(){var phone $("#phone").val();var csrftok…
网站备案有哪些资料,西安区seo搜索排名优化,免费网站空间论坛,网站开发报价单 excel短信验证前端页面前端异步请求后端处理请求请求第三方发送短信使用方式具体使用完整代码前端页面 前端异步请求
输入手机号,点击‘免费获取验证码’,发送异步请求
//发送短信
function send_sms(){var phone $("#phone").val();var csrftok…
短信验证
- 前端页面
- 前端异步请求
- 后端处理请求
- 请求第三方发送短信
- 使用方式
- 具体使用
- 完整代码
前端页面
前端异步请求
输入手机号,点击‘免费获取验证码’,发送异步请求
//发送短信
function send_sms(){var phone = $("#phone").val();var csrftoken = $("input[name='csrfmiddlewaretoken']").val();var data = {"phone":phone,"csrfmiddlewaretoken":csrftoken,//手动加入页面中的密钥,防止403}//console.log(data);//异步请求,让服务端发送短信$.ajax({url:"/index/",type:"post",data:data, //服务端request.POST获取数据,dataType:"json",success:function(res){if(res.code == 200){alert(res.data);}else{alert(res.error);}},error:function(res){alert(res);},})
}
后端处理请求
def show_index(request):if request.method == "GET":return render(request,"index.html")elif request.method == "POST":# 查看前端提交的数据data = request.POST #QueryDictprint("frontend data:",data)#获取数据phone = request.POST.get("phone")csrftoken = request.POST.get("csrfmiddlewaretoken")#中间件已经验证通过,视图还可以继续验证#发送短信try:send_sms = SendSms()except:pass#返回响应data = {"code":200,"data":"短信发送成功,请注意查收!"}return JsonResponse(data)
请求第三方发送短信
容联云官网
短信接入
使用方式
- 访问短信接入,点击‘立即接入’
- 注册用户
- 登录–管理控制台首页—查看自己的id等信息
默认提供一定数量的测试短信
- 点击 ‘开发文档’,选择 ‘短信开发手册’
学习绑定测试手机号及请求的方法
云通讯返回的验证码与用户输入的验证码一致,则验证通过
具体使用
通过程序:
1.构造完整的url
2.构造headers
3.构造请求体
通过requests发送请求
res = requests.post(url,headers=headers,data = json.dumps)
#账户信息
accountSid = "你的账户Sid"
accountToken = "你的账户口令"
appId = "你的appId"
templateId = "1"import hashlib
import time
import random
from datetime import datetime
from base64 import b64encode
import json
import requestsclass SendSms(object):base_url = 'https://app.cloopen.com:8883'def __init__(self):passdef get_sig_params(self):"""生成加密数据"""self.ts = datetime.now().strftime("%Y%m%d%H%M%S")s = accountSid + accountToken + self.tsm = hashlib.md5()m.update(s.encode())return m.hexdigest().upper()def get_full_url(self):"""获取完整的url"""#generate sigsig = self.get_sig_params()#vary_urlvary_url = "/2013-12-26/Accounts/{}/SMS/TemplateSMS?sig={}".format(accountSid,sig)self.url = self.base_url + vary_urldef get_headers(self):"""构造请求头"""s = accountSid + ":" + self.tsauth_ = b64encode(s.encode())self.headers = {"Accept":"application/json","Content-Type":"application/json;charset=utf-8;","Authorization":auth_,}def get_data(self,phone,code,time_long):"""构造请求体"""self.data = {"to":phone,"appId":appId,"templateId":templateId,"datas":[code,time_long],}def send_sms(self,phone,code,time_long):self.get_full_url()self.get_headers()self.get_data(phone,code,time_long)res = requests.post(self.url,headers=self.headers,data=json.dumps(self.data))if res.status_code == 200:print("响应OK")print()else:print("响应失败")if __name__ == "__main__":send_sms = SendSms()send_sms.send_sms("你的测试手机号","验证码","5")
完整代码
链接:完整代码
提取码:57pd
上一页:刨析django—csrf 刨析django----登录与会话保持