当前位置: 首页 > news >正文

个人开发者短信验证码接入指南-阿里云

短信验证码,作为用户注册、登录、找回密码、支付确认等环节的安全基石,几乎是每个网站、App和小程序的标配功能。然而,对于广大充满创意和激情的个人开发者来说,接入短信验证码服务当前成了一道难以逾越的“高墙”。

1、资质认证难: 当前运营商政策收紧,要求企业必须提供企业营业执照等资质完成认证和签名实名报备。许多个人开发者在第一步就被卡住。

2、签名模板审: 即使找到服务商,签名申请和模板审核流程需花费一定时间,对于追求敏捷开发的个人项目来说不够高效。

3、老用户危机: 部分早期接入的老用户,也可能因政策变化或资质问题,面临短信发送失败率高的风险,直接影响用户体验和业务运行。

下面给大家分享一个如何通过【阿里云-短信认证】产品实现个人开发者接入短信验证码的实践过程。

一、为什么选短信认证

二、接入步骤

1、准备工作

注册阿里云账号,完成实名认证,前往【号码认证服务】,开通服务。

短信认证服务仅可使用API对接,还需要创建AccessKey 用于调用API。

2、发送验证码

通过API指定目标手机号、选择签名、选择模板、并为模板中的每个变量提供具体值,以触发验证码短信的发送。

API参考:https://help.aliyun.com/zh/pnvs/developer-reference/api-dypnsapi-2017-05-25-sendsmsverifycode?spm=a2c4g.11186623.0.0.77632dbaJ0LCqX

3、核验验证码

通过API核验手机号和验证码是否成功通过校验,包括手机号是否和验证码匹配、验证码是否在有效期内等。

API参考:https://help.aliyun.com/zh/pnvs/developer-reference/api-dypnsapi-2017-05-25-checksmsverifycode?spm=a2c4g.11186623.0.0.77631ddch5UiVI

三、代码示例

发送验证码示例

const Core = require('@alicloud/pop-core');const client = new Core({accessKeyId: process.env.ALIYUN_ACCESS_KEY_ID,accessKeySecret: process.env.ALIYUN_ACCESS_KEY_SECRET,endpoint: 'https://dypnsapi.aliyuncs.com',apiVersion: '2017-05-25'
});async function sendSmsCode(phone) {// 防刷检查(伪代码)if (await isRateLimited(phone)) throw new Error('操作太频繁');const params = {PhoneNumber: phone,SignName: '阿里云',           // 平台预置签名TemplateCode: 'SMS_447251001', // 预置模板(如“您的验证码是${code},5分钟内有效”)ExpireTime: 300               // 有效期 300 秒// 注意:不传 Code,由阿里云自动生成};try {const res = await client.request('SendSmsVerifyCode', params);console.log('短信发送成功:', res);return { success: true };} catch (err) {console.error('短信发送失败:', err.message);return { success: false, error: err.message };}
}

返回示例

{"AccessDeniedDetail": "无","Message": "成功 ","RequestId": "CC3BB6D2-2FDF-4321-9DCE-B38165CE4C47","Model": {"VerifyCode": 4232,"RequestId": "a3671ccf-0102-4c8e-8797-a3678e091d09","OutId": 1231231313,"BizId": "112231421412414124123^4"},"Code": "OK","Success": true
}

产品详情页:https://www.aliyun.com/product/cloudcomm/dypns?spm=5176.30386390.J_luIH9o9zuvnZshGf1rpsR.4.ca766682JSX5tsc

产品文档:https://help.aliyun.com/zh/pnvs/user-guide/sms-authentication-service?spm=a2c4g.11186623.help-menu-75010.d_2_0.153a5fb4KsJe0X&scm=20140722.H_2787128._.OR_help-T_cn~zh-V_1

http://www.dtcms.com/a/573619.html

相关文章:

  • 移动端优秀网站上海传媒公司名字
  • 建设一个网站的需求分析一个网站开发流程
  • PsPasswd(7.19):远程修改密码的边界与合规建议
  • 【钉钉多元表格(自动化)】钉钉群根据表格 自动推送当天值日生信息
  • LangFlow源码深度解析:Component核心机制与生态体系
  • dede织梦仿站网站建设做网站赚谁的钱
  • DropLoRA技术详解:克服大模型微调过拟合的创新方法
  • 【剑斩OFFER】算法的暴力美学——串联所有单词的字串
  • 学习Linux——进程管理
  • 在k8s中部署seaweedfs,上传文件到seaweedfs方法
  • 极氪与火山引擎深化合作,Data Agent赋能车辆数据管理效率
  • Kotlin 使用命令行编译
  • 1450dpi+93% 相似度,这款发光纳米纤维让皮肤纹理“复印”更精准
  • 匠魂(1)
  • LeetCode Hot100 自用
  • 做婚介网站可行性报告模板绵阳网站建设多少钱
  • 单位服务器网站打不开网站参考页面设计
  • 陇南建设网站大良营销网站建设信息
  • mac M系列芯片 unity 安装会遇到的错误以及解决
  • Reka UI - 一款免费开源的 Vue 无头 UI 组件库,样式定制开发项目的绝佳选择
  • 个人二级网站怎么做营销咨询服务合同
  • UDP-复用分用
  • 做网站需要什么特色网站制作入门
  • QListWidget的图标模式
  • 【大模型实战笔记 6】Prompt Engineering 提示词工程
  • 能源生态系统的架构设计:利益相关方治理与跨行业协作
  • 潍坊seo管理浙江seo外包
  • BuildingAI二开 用户信息增加Coze套餐名称和剩余天数技术架构
  • 韦东山嵌入式Linux学习第3篇环境搭建与开发板操作:IMX6ULL_Pro
  • 自动驾驶深度学习模型的SOTIF优化方案