腾讯云发送短信验证码

1、在腾讯云平台中 开通短信服务

2、发送短信

2.1引用jar包

xml 复制代码
<dependency>
    <groupId>com.tencentcloudapi</groupId>
    <artifactId>tencentcloud-sdk-java-sms</artifactId>
    <version>3.1.1043</version>
</dependency>

2.2

发送短信内容:

java 复制代码
public SendResult send(SMData data) throws Exception {
		SendResult sendResult = new SendResult();
		try{
            // 实例化一个认证对象,入参需要传入腾讯云账户 SecretId 和 SecretKey,此处还需注意密钥对的保密
            // 代码泄露可能会导致 SecretId 和 SecretKey 泄露,并威胁账号下所有资源的安全性。以下代码示例仅供参考,建议采用更安全的方式来使用密钥,请参见:https://cloud.tencent.com/document/product/1278/85305
            // 密钥可前往官网控制台 https://console.cloud.tencent.com/cam/capi 进行获取
            // 实例化一个http选项,可选的,没有特殊需求可以跳过
            HttpProfile httpProfile = new HttpProfile();
            httpProfile.setEndpoint("sms.tencentcloudapi.com");
            // 实例化一个client选项,可选的,没有特殊需求可以跳过
            ClientProfile clientProfile = new ClientProfile();
            clientProfile.setHttpProfile(httpProfile);
            // 实例化要请求产品的client对象,clientProfile是可选的
            SmsClient client = new SmsClient(new Credential(getParamValue("SecretId"), getParamValue("SecretKey")), "ap-guangzhou", clientProfile);
            // 实例化一个请求对象,每个接口都会对应一个request对象
            SendSmsRequest req = new SendSmsRequest();
            String[] phoneNumberSet1 = {data.getReveivePhoneList()};
            req.setPhoneNumberSet(phoneNumberSet1);

            req.setSmsSdkAppId(getParamValue("SDKAppID"));
            req.setTemplateId(getParamValue("msg_template"));
            req.setSignName(getParamValue("signName"));
            //短信内容 参数个数和模板中数量匹配
            String[] param = {data.getContent()};
            req.setTemplateParamSet(param);
            
            // 返回的resp是一个SendSmsResponse的实例,与请求对象对应
            SendSmsResponse resp = client.SendSms(req);
            SendStatus status = resp.getSendStatusSet()[0];
            sendResult.setMessage(status.getMessage());
            sendResult.setSuccess(status.getCode().equalsIgnoreCase("ok"));
            
            String res = AbstractModel.toJsonString(resp);
            // 输出json格式的字符串回包
            LogHelper.Log("log_send_msg response:", res);
             
        } catch (TencentCloudSDKException e) {
            e.printStackTrace();
            LogHelper.Log("log_send_msg error:", e.getMessage());
        }
		return sendResult;
	}
相关推荐
wanhengidc11 小时前
服务器都有哪些优缺点?
运维·服务器·科技·智能手机·云计算
翼龙云_cloud13 小时前
阿里云渠道商:文件和数据放在云端安全吗?
运维·服务器·安全·阿里云·云计算
腾讯云数据库13 小时前
「腾讯云NoSQL」技术之Redis篇:Redis主从复制机制的原理与演进路线
redis·nosql·腾讯云·valkey·腾讯云nosql
xybDIY14 小时前
基于AWS「组织账号」创建「成员账号」并将其拥有变更成「独立账号」的必要条件
云计算·aws
辭七七15 小时前
容器存储层性能:CSI、本地卷、远程存储在 openEuler 的吞吐延迟测试与优化
云计算
wanhengidc15 小时前
云手机的不足之处有哪些?
运维·服务器·科技·智能手机·云计算
绝顶少年15 小时前
阿里云服务器磁盘空间扩展实战:从39GB到200GB无损扩容指南
服务器·阿里云·云计算
后端小张16 小时前
【鸿蒙2025领航者闯关】鸿蒙OS在工业控制领域的技术突破与实战应用
5g·华为·云计算·harmonyos·鸿蒙·鸿蒙系统·鸿蒙2025领航者闯关
ZStack开发者社区1 天前
替代VMware vSAN | 五大角度解析ZStack分布式存储替代优势
分布式·云计算
百度智能云技术站1 天前
突破显存瓶颈:基于 DeepSeek-V3.2-Exp 的 Latent Cache 卸载预取方案设计与模拟验证
云计算