Heim > Artikel > Backend-Entwicklung > ASP.NET MVC Ali ist größer als die SMS-Schnittstelle, um SMS-Gruppenversandfunktionen zu entwickeln
Es gibt viele Unternehmen im Internet, die SMS-Schnittstellendienste anbieten, wie NetEase Yunxin, Alibaba usw. Ich muss den SMS-Dienst für die Benachrichtigung in meinem Projekt verwenden. Der tatsächliche Entwicklungszyklus beträgt drei Tage, um die von Alibaba bereitgestellte Schnittstelle einfach zu entwickeln und zu berechnen und bezahlt. Als Einzelentwickler belaufen sich die Kosten für das von mir genutzte Servicegeschäft auf 0,045¥/Artikel (weniger als 100.000 Artikel).
Jetzt möchten wir die Funktion zum Senden von Gruppen-SMS-Benachrichtigungen für regelmäßige Besprechungen implementieren. Alle benachrichtigten Objektinformationen werden in MySQL gespeichert und die Anwendungsarchitektur übernimmt asp.net MVC. Bereiten Sie zunächst die zu erhaltenden API-Elemente vor (die folgenden Serviceparameter müssen auf der offiziellen Website angewendet werden),
Bewerben Sie sich entsprechend für Ihre eigene SMS-Signatur und SMS-Vorlage zum Service Die Anforderungen des Lieferanten erfordern diese Parameter:
ITopClient client = new DefaultTopClient(url, appkey, secret); AlibabaAliqinFcSmsNumSendRequest req = new AlibabaAliqinFcSmsNumSendRequest(); req.Extend = "" ;//可空,返回状态 req.SmsType = "normal" ;//不可更改 req.SmsFreeSignName = "" ;//申请的短信签名,不可填写与申请的不一 req.SmsParam = "" ;//短信模板中的变量如:{name} req.RecNum = "13000000000" ;//手机号码 req.SmsTemplateCode = "" ;//短信模板的编号,不可出错 AlibabaAliqinFcSmsNumSendResponse rsp = client.Execute(req); Console.WriteLine(rsp.Body);
Bei der konkreten Entwicklung ist zu beachten, dass es sich bei diesem Code um ein offizielles Beispiel handelt. Wenn Sie eine zu sendende Textnachricht schreiben. Wenn Sie eine Methode schreiben, fügen Sie sie einfach ein und entwickeln Sie sie dann. Besonders wichtig ist die Paarung der Vorlagenvariablen:
req.SmsParam = "" ;//Die Variablen in der SMS-Vorlage lauten wie folgt: {name}
In diesem Fall Das Zusammenfügen von Zeichenketten erfordert Grundkenntnisse. Da es JSON-ähnlich ist,
req.SmsParam ="{number:'" + Password + "'}";//Das Entfernen der doppelten Anführungszeichen ist {number:' Passwort '}
Nachdem Sie mit den Details fertig sind, beginnen Sie mit der Referenzierung der kompilierten DLL im Projekt auf Ihrem lokalen Computer. Die DLL-Datei finden Sie auf der offiziellen Website von Ali Dayu: https://www.alidayu. com/center/ Laden Sie das ZIP-Paket von application/sdk herunter und entpacken Sie es, um die generierte DLL zu erhalten. Schreiben Sie dann eine void-Methode, die Textnachrichten senden kann,
public void SmsSendForFindPassword(string phonenum,string Password) { string url = "https://eco.taobao.com/router/rest"; string appkey = "********"; string secret = "**********************"; ITopClient client = new DefaultTopClient(url, appkey, secret); AlibabaAliqinFcSmsNumSendRequest req = new AlibabaAliqinFcSmsNumSendRequest(); req.Extend = ""; req.SmsType = "normal";//默认normal不可改动 req.SmsFreeSignName = "院红会网宣";//短信签名必填 req.SmsParam = "{number:'" + Password + "'}";//模板内参数必填 req.RecNum = phonenum;//手机号码必填 req.SmsTemplateCode = "SMS_******";//不可改动 AlibabaAliqinFcSmsNumSendResponse rsp = client.Execute(req); }
Diese Methode habe ich für Administratoren entwickelt, um Passwörter abzurufen. Es ist zu beachten, dass die eingehenden Parameter phonenum und Passwort vor der Übergabe aus der Datenbank abgerufen werden müssen und nicht leer sein dürfen.
ITopClient client = new DefaultTopClient(url, appkey, Secret);
Zwei der URLs sind auf der offiziellen Website angegeben, damit die Datenübertragung einfacher ist praktisch. Sicherheit. Spezifische Auswahlmöglichkeiten finden Sie in der Dokumentation der offiziellen Alibaba-Website.
AlibabaAliqinFcSmsNumSendResponse rsp = client.Execute(req);
//Nachdem dieses Objekt instanziiert wurde, ist es der letzte Schritt im API-Sendemethodenaufruf. Davor jedes Element Alles muss korrekt sein. Wenn Fehler auftreten, können Sie Console.WriteLine(rsp.Body);
//Display error message
verwenden, um die Gruppensendefunktion zu implementieren , schreibe eine SendSmsForMeetingTime(String-Name, String-Zeit, String-Phonenum, String-Abteilung, String-Minister). Ich habe List7e4cad06284d3f5ab0c528f1a9f7b2e1 verwendet, um mehrere Daten aus der Datenbank in die Liste einzulesen, indem ich foreach(var item in list) verwende. Rufen Sie SendSmsForMeetingTime bei jedem Durchlauf einmal auf. Wenn der Durchlauf abgeschlossen ist, werden die Informationen jedes Benachrichtigungsobjekts an die Methodenparameter übergeben.
Hier finden Sie eine Beschreibung des Schnittstellenaufrufs und des Ablaufs von Textnachrichten. Benutzerclient/Benutzerserver——>Alibaba-Server——>Mobilfunk-/Telekommunikations-/Unicom-Betreiberserver——>Das Objekt kann SMS-Dienstterminals akzeptieren. Tatsächlich ruft Alibaba auch die Schnittstelle des Betreibers auf, aber Alibaba kapselt die Schnittstelle für eine kostengünstige Entwicklung, und unsere Entwickler können die Schnittstellenentwicklung von Drittanbietern auf dieser Basis abschließen. Diese Entwicklungen sind nur auf die Schnittstellen beschränkt, die vom Dienstanbieter gekapselt werden kann keine Schnittstellen aufrufen, die nicht vom Dienstanbieter gekapselt sind.
Das Obige ist meine praktische Erfahrung beim Aufrufen von APIs in tatsächlichen Projekten. Das Projekt wurde auch von Benutzern getestet, und es gibt bisher kein Problem. Dies zeigt auch, dass Alibaba bei SMS-Schnittstellendiensten und Informationsübertragung besser ist . Effizienz ist immer noch das Gewissen der Branche.
Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, dass er zum Lernen aller beiträgt. Ich hoffe auch, dass jeder die PHP-Chinesisch-Website unterstützt.
Weitere Artikel zur Entwicklung der ASP.NET MVC Alibaba SMS-Schnittstelle und zu Massen-SMS finden Sie auf der chinesischen PHP-Website!