Node.js is an open source server operating environment written in JavaScript language. It is efficient, fast, lightweight and scalable. In practical applications, Node.js can help developers easily implement various functions, including sending text messages.
In this article, we will detail how Node.js sends text messages and how to use existing SMS services to achieve this functionality.
1. Use Node.js to send text messages
1. Install dependencies
First, we need to install one of the official modules of Node.js-"twilio", you can To install through npm, execute the following command:
npm install twilio
2. Verify identity
Before using Twilio API to send text messages, you need to verify your identity and obtain Account SID and Auth Token, these two parameters This can be found in Twilio's console.
3. Write the code to send text messages
We use Twilio API to send text messages. The code in Node.js is as follows:
const accountSid = 'YOUR_ACCOUNT_SID'; const authToken = 'YOUR_AUTH_TOKEN'; const client = require('twilio')(accountSid, authToken); client.messages .create({ body: 'Hello from Node', from: '+1XXXXXXXXX', //在Twilio中您需要购买一个号码, to: '+1XXXXXXXXX' //作为from参数输入,to是您的接收短信的电话号码。 }) .then(message => console.log(message.sid));
After executing the above code, in your A "Hello from Node" text message will be sent to your phone.
2. Use existing SMS services to send text messages
If you do not want to use the Twilio API, but want to use some existing SMS services to send text messages, then the following are some common text messages Services for you to choose from:
1. Tencent Cloud SMS Service
Tencent Cloud SMS API can be called through the HTTP/HTTPS protocol and supports GET or POST requests. The parameters use the standard HTTP protocol format (such as key1 =value1&key2=value2), for the signature algorithm, please refer to the Tencent Cloud SMS API documentation.
The sample code is as follows:
const request = require('request'); const querystring = require('querystring'); const appid = 'YOUR_APPID'; const appkey = 'YOUR_APPKEY'; const nationCode = '86' //中国区电话号码前缀 const phoneNumber = 'XXXXXXXXX' //接受短信的手机号码 const templateId = 'XXXXXX' //短信模板ID const random = Math.floor(Math.random()*99999+1) //随机数 const curTime = Math.floor(new Date().getTime()/1000); //当前时间戳 const sig = querystring.escape(Buffer.from(`appkey=${appkey}&random=${random}&time=${curTime}&mobile=${nationCode}${phoneNumber}`, 'utf8').toString('base64')); const options = { url: 'https://yun.tim.qq.com/v5/tlssmssvr/sendsms', method: 'POST', headers: { 'Content-Type': 'application/json' }, json: true, body: { tel: { nationCode, mobile: phoneNumber }, tpl_id: templateId, params: [ random.toString(), '5' ], }, qs: { sdkappid: appid, random, time: curTime, sig, extend: '', ext: '' }, }; request(options, (error, response, body) => { if(error) { console.log(error); } else { console.log(body); } });
2. Alibaba Cloud SMS Service
Alibaba Cloud SMS Service can also be called through the HTTP/HTTPS protocol, and provides Java, PHP, and Python and SDKs for multiple programming languages such as Node.js.
The sample code is as follows:
const Core = require('@alicloud/pop-core'); const client = new Core({ accessKeyId: '<YourAccessKeyId>', accessKeySecret: '<YourAccessKeySecret>', endpoint: 'https://dysmsapi.aliyuncs.com', apiVersion: '2017-05-25' }); const params = { "RegionId": "cn-hangzhou", "PhoneNumbers": "1500000000", "SignName": "阿里云短信测试专用", "TemplateCode": "SMS_71390007", "TemplateParam": "{\"code\":\"12345\"}" } const requestOption = { method: 'POST' }; client.request('SendSms', params, requestOption).then((result) => { console.log(result); }, (ex) => { console.log(ex); })
3. Summary
Through the introduction of this article, we can understand how Node.js sends text messages, including using Twilio API and using Tencent Cloud and existing SMS services such as Alibaba Cloud. Sending text messages is one of the commonly used functions in our development. In actual applications, we need to choose it according to the specific situation.
The above is the detailed content of How to send text messages in nodejs. For more information, please follow other related articles on the PHP Chinese website!