首页 > 编程知识 正文

接收短信验证码的软件,app注册短信验证码

时间:2023-05-06 21:25:32 阅读:139304 作者:2539

前言:现在电话支持外卖和快递。 邮件是为了接收认证码的。 那么,如何在普通APP上使用手机号码验证码方式进行注册和登录呢? 这篇文章可能对你有帮助。

1 .寻找合适的短信平台由于三大运营商的限制而被放在那里,以个人的力量当然不能直接向用户发送邮件。 所以我们必须有强大的平台支撑。 AlibabaCloud (阿里巴巴云)、腾讯云等都有短信通知服务,虽然平台多,但实现方法基本相同。 这里以AlibabaCloud (阿里巴巴云)邮件为例。

2 .注册使用AlibabaCloud (阿里巴巴云)账户(可跳过现有账户)钉钉,可以在淘宝上注册,也可以通过支付宝(Alipay )扫描进行注册。 从以下链接中,单击右上角的注册按钮跳转到注册页。

https://cn.aliyun.com/

3 .开通短信服务,短信套餐购买地址:点击跳转

如果链接被禁用,可以在AlibabaCloud (阿里巴巴云)首页搜索短信服务,点击后立即购买即可跳转。 截图如下(

4 .短信签到和短信模板申请成功后,点击首页控制台进入,如果找不到短信入口,可以在产品服务中进行搜索。 截图如下所示,现在进入控制台。

5 .点击添加SMS签名和模板(添加国内消息签名)按钮,填写相应资料,保存备查即可)。

签名是指文本消息中包含括号【】的文本,用作发件人的身份证。

模板

模板是指消息的正文内容,单击“添加模板”按钮,填写相关资料并提交审核。

模板中的变量使用${}语法,可以在一条消息中设置多个变量。 (审阅模板需要一些时间,建议您尽快提交审阅。)。 审核完成后即可获得模板代码。

6 .集成到项目中(maven方式的演示,代码已经上传到github上。 单击查看) )获取访问密钥和安全

查看右上角的图标,然后单击“Accesskey管理”以生成key和私钥。 私钥只生成一次,请妥善保存。 也可以在这里使用子账户的accessKey发送邮件,但与这次的内容无关,所以不详细说明。

添加maven依赖关系

注意使用版本,这里是4.5.16 dependencygroupidcom.a liyun/groupidartifactidaliyun-Java-SDK-core/artifactidversion4. a 使用version ependencydependencygroupidcom.a liyun/groupidartifactidaliyun-Java-SDK-dysmsapi/artifactidversion 1.1 @value((${accesskey} ) )私有字符串访问key; @value((${accessssecret} ) private String accesssSecret; /** *发送验证码的逻辑*/private MapString,stringsendSMS(stringmobile ) throwsclientexception ) mapstring, stringresultmap=newhaaps//system.set property (sun.net.client.defaultconnecttimeout ),) 10000 )可自行调整超时时间system.set property (' sun.net.client.defaultreadtimeout ',' 10000 ' ); 初始化acsClient,并初始化注册化iclientprofileprofile=default profile.get profile (' cn-Hangzhou ',accessKey,access secret efauret ) iacsclientacsclient=newdefaultacsclient (配置文件; //组装请求方-具体说明是控制台-文档的一部分内容sendsmsrequestrequest=newsendsmsrequest (; //必填:要发送的手机号码request.setphonenumbers(mobile ); //必填:SMS签名-在SMS控制台中找到request.setsignname(signname ); request.settemplatecode; intrand_num=(int ) ) (Math.random ) )9)1) *100000 ); request.settemplateparam ({' code' :' rand _ num (} ) ); //这里最好使用json工具//hint。 这里有可能抛出异常,所以注意catchsendsmsresponsesendsmsresponse=acsclient.get ACS response (request )。 string code=send SMS response.getcode (; if (code.equals (ok ) )结果映射(put ),) 1000 ); resultmap.put('msg ','发送成功'); }else{resultmap.put('code ','-1000 ' ); resultmap.put('msg ','发送失败'); } return resultMap; } /** *程序的入口*/@ request mapping (value='/send SMS ' ) @ResponseBodypublic MapString,stringgetvalidcode ) string } MapString,String resultMap=new HashMap (; resultmap.put('code ','-1000 ' ); resultmap.put('msg ','发送失败'); 返回结果图; }其他API

请确认邮件的正式文档。 7 .综上所述,是各个项目联合AlibabaCloud (阿里巴巴云)发送消息认证码的具体实现逻辑。 可以与redis等缓存工具配合使用,实现验证码的有效期,进一步实现登录的业务逻辑。 流程图如下。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。