网易云信,发送验证码短信C#版代码
生活随笔
收集整理的這篇文章主要介紹了
网易云信,发送验证码短信C#版代码
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
網易云信,發送驗證碼短信C#版代碼
網易云信發送短信代碼(C#?版)。。。。需要注意SHA1 String有轉換小寫!!!!
using System; using System.Collections.Generic; using System.Linq; using System.Security.Cryptography; using System.Text; using System.Threading.Tasks;namespace HaiMou.Common.SMS {public class NeteaseSms{static string url = "https://api.netease.im/sms/sendcode.action";static string appKey = "************************************";static string appSecret = "******";public static string Send(string mobile){string nonce = new Random().Next(100000, 999999).ToString();string curTime = DateTime.Now.ToUnixStamp().ToString();string checkSum = SHA1_Hash(appSecret+ nonce+ curTime);string post = $"mobile={mobile}";byte[] btBodys = Encoding.UTF8.GetBytes(post);System.Net.WebRequest wReq = System.Net.WebRequest.Create(url);wReq.Method = "POST";wReq.Headers.Add("AppKey", appKey);wReq.Headers.Add("Nonce", nonce);wReq.Headers.Add("CurTime", curTime);wReq.Headers.Add("CheckSum", checkSum);wReq.ContentLength = btBodys.Length;wReq.ContentType = "application/x-www-form-urlencoded;charset=utf-8";using (var wsr = wReq.GetRequestStream()){wsr.Write(btBodys, 0, btBodys.Length);}System.Net.WebResponse wResp = wReq.GetResponse();System.IO.Stream respStream = wResp.GetResponseStream();string result;using (System.IO.StreamReader reader = new System.IO.StreamReader(respStream,System.Text.Encoding.UTF8)){result = reader.ReadToEnd();}//Json數據,obj是網易生成的驗證碼return result;}private static string SHA1_Hash(string str_sha1_in){SHA1 sha1 = new SHA1CryptoServiceProvider();byte[] bytes_sha1_in = UTF8Encoding.Default.GetBytes(str_sha1_in);byte[] bytes_sha1_out = sha1.ComputeHash(bytes_sha1_in);string str_sha1_out = BitConverter.ToString(bytes_sha1_out);str_sha1_out = str_sha1_out.Replace("-", "").ToLower();return str_sha1_out;}private static string getFormattedText(byte[] bytes){int len = bytes.Length;StringBuilder buf = new StringBuilder(len * 2);for (int j = 0; j < len; j++){buf.Append(HEX_DIGITS[(bytes[j] >> 4) & 0x0f]);buf.Append(HEX_DIGITS[bytes[j] & 0x0f]);}return buf.ToString();}private static char[] HEX_DIGITS = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' };} }?
posted on 2016-09-04 23:39 海眸1990 閱讀(...) 評論(...) 編輯 收藏轉載于:https://www.cnblogs.com/Zendic/p/5840786.html
總結
以上是生活随笔為你收集整理的网易云信,发送验证码短信C#版代码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: iOS imageview图片压缩变形
- 下一篇: cmd命令:在ftp下载文件运行