Heim  >  Artikel  >  Web-Frontend  >  So senden Sie Textnachrichten in NodeJS

So senden Sie Textnachrichten in NodeJS

王林
王林Original
2023-05-08 16:08:381134Durchsuche

Node.js ist eine Open-Source-Serverbetriebsumgebung, die in der Sprache JavaScript geschrieben ist. Sie ist effizient, schnell, leichtgewichtig und skalierbar. In praktischen Anwendungen kann Node.js Entwicklern dabei helfen, verschiedene Funktionen, einschließlich des Versendens von Textnachrichten, einfach zu implementieren.

In diesem Artikel erfahren Sie, wie Node.js SMS-Nachrichten sendet und wie Sie vorhandene SMS-Dienste nutzen, um diese Funktionalität zu erreichen.

1. Verwenden Sie Node.js, um Textnachrichten zu senden

Zuerst müssen wir eines der offiziellen Module von Node.js installieren – „twilio“. Führen Sie Folgendes aus Befehl:

npm install twilio

2. Identität überprüfen

Bevor Sie die Twilio-API zum Senden von Textnachrichten verwenden, müssen Sie Ihre Identität überprüfen und die Konto-SID und das Authentifizierungs-Token abrufen.

3. Schreiben Sie den Code zum Senden von Textnachrichten

Wir verwenden die Twilio-API zum Senden von Textnachrichten. Der Code in Node.js lautet wie folgt:

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));

Nach der Ausführung des obigen Codes wird die Textnachricht „Hallo von Node“ angezeigt auf Ihr Telefon gesendet werden.

2. Verwenden Sie vorhandene SMS-Dienste zum Senden von Textnachrichten.

Wenn Sie die Twilio-API nicht verwenden möchten, aber einige vorhandene SMS-Dienste zum Senden von Textnachrichten verwenden möchten, stehen Ihnen hier einige gängige SMS-Dienste zur Auswahl von:

1 .Tencent Cloud SMS Service

Tencent Cloud SMS API kann über das HTTP/HTTPS-Protokoll aufgerufen werden und unterstützt GET- oder POST-Anfragen. Die Parameter verwenden das Standard-HTTP-Protokollformat (z. B. Schlüssel1=Wert1 und Schlüssel2=Wert2). Informationen zum Signaturalgorithmus finden Sie in der Dokumentation zur Tencent Cloud SMS API.

Der Beispielcode lautet wie folgt:

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 kann auch über das HTTP/HTTPS-Protokoll aufgerufen werden und bietet SDKs für mehrere Programmiersprachen wie Java, PHP, Python und Node.js.

Der Beispielcode lautet wie folgt:

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. Zusammenfassung

Durch die Einführung dieses Artikels können wir verstehen, wie Node.js Textnachrichten sendet, einschließlich der Verwendung der Twilio-API und vorhandener Textnachrichtendienste wie Tencent Cloud Alibaba Cloud. Das Senden von Textnachrichten ist eine der am häufigsten verwendeten Funktionen in unserer Entwicklung. In tatsächlichen Anwendungen müssen wir sie entsprechend der spezifischen Situation auswählen.

Das obige ist der detaillierte Inhalt vonSo senden Sie Textnachrichten in NodeJS. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:JQuery-Löschelement-IDNächster Artikel:JQuery-Löschelement-ID