溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

c#短信接口怎么用

發(fā)布時間:2021-12-03 10:30:09 來源:億速云 閱讀:281 作者:小新 欄目:開發(fā)技術

這篇文章給大家分享的是有關c#短信接口怎么用的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

短信發(fā)送接口

1.1 請求地址

請求地址是客戶接口程序調用時請求的url地址,采用的是https post 接口,地址是

https://sh3.ipyy.com/sms.aspx 對應UTF-8

https://sh3.ipyy.com/smsGBK.aspx 對應GB2312

https://sh3.ipyy.com/smsJson.aspx 對應UTF-8(返回值為json格式)

https://sh3.ipyy.com/ensms.ashx 對應UTF-8(加密傳輸,使用json)

入口地址一般不會發(fā)生變化,當發(fā)生變化的時候,會通知接口用戶

1.2參數(shù)說明

參數(shù)名稱

含義

說明

userid

企業(yè)id

企業(yè)ID(不驗證)

account

發(fā)送用戶帳號

用戶帳號,由系統(tǒng)管理員

password

發(fā)送帳號密碼

用戶賬號對應的密碼

可以使用明文,也可以全用md5加密方式,md5采用32位大寫

如abc123加密后為

E99A18C428CB38D5F260853678922E03

mobile

全部被叫號碼

短信發(fā)送的目的號碼.多個號碼之間用半角逗號隔開 

content

發(fā)送內容

短信的內容,內容需要UTF-8編碼,提交內容格式:內容+【簽名】。簽名是公司的名字或者公司項目名稱。示例:您的驗證碼:1439【騰飛】?!尽渴呛灻臉俗R符。請按照正規(guī)的格式提交內容測試

sendTime

定時發(fā)送時間

為空表示立即發(fā)送,定時發(fā)送格式2010-10-24 09:08:10

action

發(fā)送任務命令

設置為固定的:send

extno

擴展子號

請先詢問配置的通道是否支持擴展子號,如果不支持,請?zhí)羁?。子號只能為?shù)字,且最多5位數(shù)。

例如:

https://sh3.ipyy.com/sms.aspx?action=send&userid=&account=賬號&password=密碼&mobile=15023239810,13527576163&content=內容&sendTime=&extno=

1.3返回值

在接收到客戶端發(fā)送的https請求后,返回以xml的方式返回處理結果。格式為:

<?xml version="1.0"  encoding="utf-8" ?>

<returnsms>

<returnstatus>status</returnstatus> ---------- 返回狀態(tài)值:成功返回Success 失敗返回:Faild

<message>message</message> ---------- 相關的錯誤描述

<remainpoint> remainpoint</remainpoint> ---------- 返回余額

<taskID>taskID</taskID>  -----------  返回本次任務的序列ID

<successCounts>successCounts</successCounts> --成功短信數(shù):當成功后返回提交成功短信數(shù)

</returnsms>

1.4 Json返回值

{"returnstatus":"Success",
"message":"操作成功",
"remainpoint":"-4",
"taskID":"1504080852350206",
"successCounts":"1"}
以下是c#短信接口的demo

// 華信短信發(fā)送DEMO程序(aspx接口)

// 短信驗證碼免費測試:17721077856  2885400276

// 開發(fā)環(huán)境:vs2015,.net framework 4.0,Microsfot Http Client 2.2.29

// 版本:1.1

// 最近修訂:2016-12-28

using System;

using System.Collections.Generic;

using System.Net.Http;

using System.Xml.Linq;

using System.Xml.XPath;

 

namespace Huaxin.MessageSend.Demo

{

    class SendViaAspx : ISender

    {

        private const string URL = @"https://sh3.ipyy.com/sms.aspx";

        private readonly HttpClient _client = new HttpClient();

 

        public SendViaAspx()

        {

            _client.DefaultRequestHeaders.Clear();

            _client.BaseAddress = new Uri(URL);

        }

 

        public void DoSend()

        {

            var accountName = "yzz";     //改為實際賬號名

            var password = "yzz123";      //改為實際發(fā)送密碼

            var mobiles = "18611729367";    //多個手機號用“,”分隔

            var content = "c#版aspx接口發(fā)送測試,您的驗證碼:8888【華信】";

            var extNumber = "";

            var result = GetResult(accountName, password, mobiles, content, extNumber);

            Print(result);

        }

 

        private string GetResult(string accountName, string password,string mobiles, string content, string extNumber)

        {

            var req = new HttpRequestMessage();

            req.Headers.Clear();

            req.Headers.Add("ContentType", "application/x-www-form-urlencoded;charset=utf-8");

            req.Method = HttpMethod.Post;

            req.Content = new FormUrlEncodedContent(new Dictionary<string, string>

            {

                {"action", "send"},

                {"userid", ""},

                {"account", accountName},

                {"password", password},

                {"mobile", mobiles},

                {"content", content},

                {"sendtime", ""},

                {"extno", extNumber}

            });

            var response = _client.SendAsync(req).Result;

            try

            {

                response.EnsureSuccessStatusCode();

            }

            catch (Exception ex)

            {

                Console.WriteLine("Error:{0}", ex.Message);

                return "";

            }

            return response.Content.ReadAsStringAsync().Result;

        }

 

        private void Print(string resultString)

        {

            var el = XElement.Parse(resultString);

            var root = el.XPathSelectElement("/");

            var status = root.XPathSelectElement("returnstatus").Value;

            var message = root.XPathSelectElement("message").Value;

            var remainpoint = root.XPathSelectElement("remainpoint").Value;

            var taskid = root.XPathSelectElement("taskID").Value;

            var successCounts = root.XPathSelectElement("successCounts").Value;

            Console.WriteLine("狀態(tài):{0}",status);

            Console.WriteLine("狀態(tài)描述:{0}", message);

            Console.WriteLine("余額:{0}", remainpoint);

            Console.WriteLine("任務ID:{0}", taskid);

            Console.WriteLine("成功條數(shù):{0}", successCounts);

        }

    }

}

感謝各位的閱讀!關于“c#短信接口怎么用”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。

AI