Rumah > hujung hadapan web > Soal Jawab bahagian hadapan > Bagaimana untuk menghantar mesej teks dalam nodejs

Bagaimana untuk menghantar mesej teks dalam nodejs

王林
Lepaskan: 2023-05-08 16:08:38
asal
1195 orang telah melayarinya

Node.js ialah persekitaran operasi pelayan sumber terbuka yang ditulis dalam bahasa JavaScript Ia cekap, pantas, ringan dan boleh berskala. Dalam aplikasi praktikal, Node.js boleh membantu pembangun dengan mudah melaksanakan pelbagai fungsi, termasuk menghantar mesej teks.

Dalam artikel ini, kami akan memperkenalkan secara terperinci cara Node.js menghantar mesej teks dan cara menggunakan perkhidmatan SMS sedia ada untuk mencapai fungsi ini.

1. Gunakan Node.js untuk menghantar mesej teks

1 Pasang kebergantungan

Pertama, kita perlu memasang salah satu modul rasmi Node.js - "twilio. ", anda boleh Untuk memasang melalui npm, laksanakan arahan berikut:

npm install twilio
Salin selepas log masuk

2. Sahkan identiti

Sebelum menggunakan Twilio API untuk menghantar mesej teks, anda perlu mengesahkan identiti anda dan mendapatkan SID Akaun dan Token Auth, dua parameter ini Ini boleh didapati dalam konsol Twilio.

3. Tulis kod untuk menghantar mesej teks

Kami menggunakan Twilio API untuk menghantar mesej teks Kod dalam Node.js adalah seperti berikut:

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));
Salin selepas log masuk

Selepas melaksanakan. kod di atas, dalam mesej teks "Hello dari Node" anda akan dihantar ke telefon anda.

2. Gunakan perkhidmatan SMS sedia ada untuk menghantar mesej teks

Jika anda tidak mahu menggunakan API Twilio, tetapi ingin menggunakan beberapa perkhidmatan SMS sedia ada untuk menghantar mesej teks, maka berikut adalah beberapa perkhidmatan mesej teks biasa untuk anda pilih daripada:

1 Perkhidmatan SMS Awan Tencent

API SMS Awan Tencent boleh dipanggil melalui protokol HTTP/HTTPS, menyokong permintaan GET atau POST, dan parameter menggunakan format protokol HTTP standard (seperti key1 =value1&key2=value2), untuk algoritma tandatangan, sila rujuk dokumentasi Tencent Cloud SMS API.

Kod sampel adalah seperti berikut:

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);
    }
});
Salin selepas log masuk

2 Perkhidmatan SMS Awan Alibaba

Perkhidmatan SMS Awan Alibaba juga boleh dipanggil melalui protokol HTTP/HTTPS, dan menyediakan Java. , PHP dan Python serta SDK untuk berbilang bahasa pengaturcaraan seperti Node.js.

Kod sampel adalah seperti berikut:

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);
})
Salin selepas log masuk

3 Ringkasan

Melalui pengenalan artikel ini, kita dapat memahami cara Node.js menghantar mesej teks, termasuk menggunakan Twilio. API dan menggunakan Tencent Cloud dan perkhidmatan SMS sedia ada seperti Alibaba Cloud. Menghantar mesej teks adalah salah satu fungsi yang biasa digunakan dalam pembangunan kami Dalam aplikasi sebenar, kami perlu memilihnya mengikut situasi tertentu.

Atas ialah kandungan terperinci Bagaimana untuk menghantar mesej teks dalam nodejs. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan