首页 > 编程 > C# > 正文

C#代码实现短信验证码接口示例

2020-01-24 01:01:19
字体:
来源:转载
供稿:网友

本文实例为大家分享了C#实现短信验证码接口示例,供大家参考,具体内容如下

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Net.Security; using System.Security.Cryptography.X509Certificates; using System.Net; using System.IO; using System.IO.Compression; using System.Text.RegularExpressions; using System.Security.Cryptography;using System.Web;public class Test{    private static readonly string DefaultUserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)";      private static bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors)     {       return true; //总是接受       }    static void Main(string[] args)     {       DateTime dt = DateTime.Now;       string mttime = dt.ToString("yyyyMMddHHmmss");      string pwd1 = "*************"+mttime;   string pwd = GetMD5(pwd1)      string content = "【阅信】验证码888888,打死也不能告诉别人哦。";      string url = "http://183.203.28.226:9000/HttpSmsMt";       Encoding encoding = Encoding.GetEncoding("utf-8");       IDictionary<string, string> parameters = new Dictionary<string, string>();       parameters.Add("name", "****");       parameters.Add("pwd", pwd);       parameters.Add("content",content);      parameters.Add("phone","13381272353");      parameters.Add("subid","");      parameters.Add("mttime", mttime);       HttpWebResponse response = CreatePostHttpResponse(url,parameters,encoding);       //打印返回值       Stream stream = response.GetResponseStream();  //获取响应的字符串流       StreamReader sr = new StreamReader(stream); //创建一个stream读取流       string html = sr.ReadToEnd();  //从头读到尾,放到字符串html       Console.WriteLine(html);      }      public static string GetMD5(string myString)     {      MD5 md5 = new MD5CryptoServiceProvider();      // byte[] fromData = System.Web.HttpUtility.UrlEncode.GetBytes(myString);      byte[] fromData = Encoding.Default.GetBytes(myString);      byte[] targetData = md5.ComputeHash(fromData);      string byte2String = null;      for(int i=0;i<targetData.Length;i++)       {        byte2String+= targetData[i].ToString("x");      }      return byte2String;    }       public static HttpWebResponse CreatePostHttpResponse(string url, IDictionary<string, string> parameters,Encoding charset)     {       HttpWebRequest request = null;       //HTTPSQ请求       ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult);       request = WebRequest.Create(url) as HttpWebRequest;       request.ProtocolVersion = HttpVersion.Version10;       request.Method = "POST";       request.ContentType = "application/x-www-form-urlencoded";       request.UserAgent = DefaultUserAgent;       //如果需要POST数据         if (!(parameters == null || parameters.Count == 0))       {         StringBuilder buffer = new StringBuilder();         int i = 0;         foreach (string key in parameters.Keys)         {           if (i > 0)           {             buffer.AppendFormat("&{0}={1}", key, parameters[key]);           }           else           {             buffer.AppendFormat("{0}={1}", key, parameters[key]);           }           i++;         }         byte[] data = charset.GetBytes(buffer.ToString());         using (Stream stream = request.GetRequestStream())         {           stream.Write(data, 0, data.Length);         }       }       return request.GetResponse() as HttpWebResponse;     } }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持武林网。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表