腾讯短信发送

person 无限可能    watch_later 2024-07-11 16:29:13
visibility 120    class 腾讯短信,NodeJs    bookmark 分享

使用Node.js实现腾讯短信发送功能可以通过腾讯云提供的短信服务。以下是详细步骤及代码示例,帮助您快速集成腾讯短信发送功能。

一、前提条件

  1. 注册并登录腾讯云账号。
  2. 开通短信服务并获取相关的AppID、AppKey、签名、模板ID等信息。

二、安装依赖

首先,安装腾讯云SDK和请求库:

npm install tencentcloud-sdk-nodejs axios

三、代码示例

以下示例展示了如何使用Node.js调用腾讯云短信服务发送短信。

1. 配置项目

在项目根目录下创建一个配置文件config.js,存放腾讯云的相关配置:

module.exports = {
  secretId: 'YOUR_SECRET_ID', // 替换为您的SecretId
  secretKey: 'YOUR_SECRET_KEY', // 替换为您的SecretKey
  smsSdkAppId: 'YOUR_SDK_APP_ID', // 替换为您的SdkAppId
  signName: 'YOUR_SIGN_NAME', // 替换为您的签名
  templateId: 'YOUR_TEMPLATE_ID', // 替换为您的模板ID
};

2. 发送短信功能实现

创建一个sendSms.js文件,编写发送短信的代码:

const tencentcloud = require('tencentcloud-sdk-nodejs');
const config = require('./config');

// 导入 SMS 模块
const SmsClient = tencentcloud.sms.v20210111.Client;

// 实例化要请求产品的client对象
const client = new SmsClient({
  credential: {
    secretId: config.secretId,
    secretKey: config.secretKey,
  },
  region: 'ap-guangzhou',
  profile: {
    httpProfile: {
      endpoint: 'sms.tencentcloudapi.com',
    },
  },
});

async function sendSms(phoneNumber, templateParams) {
  const params = {
    SmsSdkAppId: config.smsSdkAppId,
    SignName: config.signName,
    TemplateId: config.templateId,
    PhoneNumberSet: [`+86${phoneNumber}`], // 请确保手机号格式为+86开头
    TemplateParamSet: templateParams,
  };

  try {
    const response = await client.SendSms(params);
    console.log('SMS Sent:', response);
    return response;
  } catch (error) {
    console.error('Error sending SMS:', error);
    throw error;
  }
}

// 示例调用
sendSms('YOUR_PHONE_NUMBER', ['1234', '5']) // 替换为目标手机号和模板参数
  .then(response => {
    console.log('SMS sent successfully:', response);
  })
  .catch(error => {
    console.error('Failed to send SMS:', error);
  });

3. 说明

  1. config.js文件中存放了腾讯云短信服务的相关配置信息。
  2. sendSms.js文件中实现了调用腾讯云短信服务发送短信的功能。需要传入手机号码和模板参数。
  3. phoneNumber应为带有国家代码的完整号码,例如+8613711112222
  4. templateParams是模板参数数组,必须与模板内容中的参数占位符匹配。

四、运行代码

确保已经安装了所有依赖并配置了相关信息,运行以下命令发送短信:

node sendSms.js

五、总结

通过以上步骤,您可以在Node.js中集成腾讯云短信发送功能。主要流程包括:配置腾讯云相关信息、编写短信发送功能代码、调用腾讯云SDK发送短信。如果遇到任何问题,可以参考腾讯云短信服务的官方文档或联系腾讯云技术支持。

评论区
评论列表
menu