AI软件下载
有趣网站推荐及实用软件下载

UE5使用阿里云短信服务实现手机号注册登录短信验证码验证功能方法

尽管使用短信验证功能是要花钱的,考虑到使用邮箱可能没有直接用手机接条短信那么简单,为了方便用户所以放弃了使用邮箱进行注册验证而是使用手机号注册,阿里云的短信服务还便宜点,这里以阿里云的短信功能为例,

阿里云短信服务

开始前你需要有一个服务器,用来配置短信验证的服务器端功能,并开通购买了阿里云的短信服务,然后获取了API AccessKey ID和AccessKey Secret。

我用的是Linux系统,服务器上没安装Python环境的话,先安装Python,这个就比较简单了,网上一搜很多教程,然后配置阿里云的短信验证依赖环境,依次运行如下命令安装,

pip install flask
pip install aliyun-python-sdk-core
pip install aliyun-python-sdk-ecs

安装完成后,创建一个名为SendSMS.py的Python文件,代码如下:

import json,random,flask
from aliyunsdkcore.client import AcsClient
from aliyunsdkcore.request import CommonRequest

# 生成验证码的长度
VerificationLen = 4

def BeginSend(PhoneNum,SignName,TemplateCode):

client = AcsClient(‘你的AccessKey ID’, ‘你的AccessKey Secret’, ‘cn-hangzhou’)
# 生成验证码
authCode = str(random.randint(1000, (10**VerificationLen-1)))
dict = {‘code’: authCode}
request = CommonRequest()
request.set_accept_format(‘json’)
request.set_domain(‘dysmsapi.aliyuncs.com’)
request.set_method(‘POST’)
request.set_protocol_type(‘https’) # https | http
request.set_version(‘2017-05-25’)
request.set_action_name(‘SendSms’)
request.add_query_param(‘RegionId’, “cn-hangzhou”)
request.add_query_param(‘PhoneNumbers’, PhoneNum)
request.add_query_param(‘SignName’, SignName)
request.add_query_param(‘TemplateCode’, TemplateCode)
# request.add_query_param(‘TemplateParam’, “{‘code’:’5648′}”)
request.add_query_param(‘TemplateParam’, str(dict))
# 请求
response = client.do_action(request)
cjson = json.loads(str(response,’utf-8′))
cjson[‘authCode’] = authCode
print(json.dumps(cjson))
return cjson

# 使用本文件作为服务名
server = flask.Flask(__name__)
# @server.route()可以将普通函数转变为服务 登录接口的路径、请求方式


# 发送短信验证码
@server.route(“/SendM”, methods=[‘post’])
def SendM():
cjson = flask.request.get_json()
PhoneNum = cjson[‘PhoneNum’]
SignName = cjson[‘SignName’]
TemplateCode = cjson[‘TemplateCode’]
resu = BeginSend(PhoneNum,SignName,TemplateCode)
return resu



if __name__ == ‘__main__’:

server.run(debug=True, port=1234, host=’0.0.0.0′) # 指定端口1234,host,0.0.0.0代表任何ip都可以访问

代码中替换你自己的AccessKey ID和AccessKey Secret,将SendSMS.py文件上传到服务器root文件夹或是你需要的其它任何地方,然后运行如下代码启动服务,
nohup python3 SendSMS.py >> ./log.SendSMS 2>&1 &

打开UE5编写代码蓝图节点,由于服务器接收的是JSON格式的数据,所以要先构建待发送的JSON数据,主要是PhoneNum待接收短信的手机号,SignName短信签名名称,阿里云后台你设置的内容,TemplateCode短信模板 Code,也是阿里云后台你设置的内容。这里使用http请求,请求连接为http://你的服务器IP:1234,请求成功后服务器会返回JSON格式的字符串如:{“BizId”:”05108674083612^0″,”Code”:”OK”,”Message”:”OK”,”RequestId”:”B54ED-5AB6-5737-85E1-1B363F8E27″,”authCode”:”7724″},内容包括Code:请求状态码,如OK,authCode:短信验证码,4位数字,你可以解析从服务器收到的JSON字符串,提取出code和authCode值来检测是否成功发送短信,以及验证用户朝软件里输入验证码是否正确,

如果服务器返回错误的话,可以在终端输入命令:ps -ef | grep SendSMS.py

检查服务是否正常运行

或是运行命令:cat ./log.SendSMS,查看日志具体错误信息

AI应用在线一键启动,低价爽玩4090:立即体验>>

软件催更及1对1人工答疑支持: https://nuowa.net/1806
赞(0) 打赏
软件无法使用?点击查看常见问题说明>>

最近更新

comfyui视频人物换主体工作流及模型下载-诺瓦小站

comfyui视频人物换主体工作流及模型下载

本次分享一个好玩的视频人物换主体工作流,本工作流可以使用一张图片中的主体替换视频中的人物主体。比如抖音上很多热门的猴子炒饭,奥特曼炒饭,猴子vlog等等,都可以使用人物主体替换把原来视频中的人物替换成指定的人物。 comfyui工作流节点使...

凡人修仙传动画韩立高清图片壁纸素材AI绘画图集-诺瓦小站

凡人修仙传动画韩立高清图片壁纸素材AI绘画图集

恭迎韩天尊! 祝贺韩天尊顺利结婴! 热门国漫凡人修仙传动画已经更新了5年了,最新一集,主人公韩立顺利结婴,成为一名元婴修士。我属于是比较喜欢看动漫的,看过的动漫估计没过百也得大几十了,热门国漫大多都看过。凡人修仙传算是最喜欢的动漫之一,韩立...

觉得文章对你有帮助就打赏一下作者

非常感谢你的打赏,我将有更多的动力继续提供优质内容,让我们一起创建更加美好的世界!

支付宝扫一扫

微信扫一扫