<address id="xpjh9"><listing id="xpjh9"><meter id="xpjh9"></meter></listing></address>

<address id="xpjh9"><address id="xpjh9"><listing id="xpjh9"></listing></address></address>
<noframes id="xpjh9">
<noframes id="xpjh9">

<address id="xpjh9"><address id="xpjh9"><listing id="xpjh9"></listing></address></address>
    <form id="xpjh9"></form><address id="xpjh9"><listing id="xpjh9"><menuitem id="xpjh9"></menuitem></listing></address>

      <noframes id="xpjh9">
      VB.net 2010 視頻教程 VB.net 2010 視頻教程 VB.net 2010 視頻教程
      SQL Server 2008 視頻教程 c#入門經典教程 Visual Basic從門到精通視頻教程
      當前位置:
      首頁 > 編程開發 > c#教程 >
      • C#教程之使用阿里云的短信服務發送短信

      • 2019-04-13 21:47 來源:未知

      在給客戶開發一個信息發送功能的時候,需要涉及到短信的發送,短信發送一般不同的廠商提供的接口不同,處理方式也不太一樣,之前用的一個廠商的,提供了一個封裝類就很容易發送短息,因此都是基于HTTP協議做的一個數據發送而已,接觸阿里云的短信服務器后,發現阿里云還增加了非常多的參數,其中包括一些秘鑰和簽名的內容。短信發送由于比較敏感原因,大多數應用場景是驗證碼或者一些固定的信息提醒,因此廠商都要求客戶按預定的模板來發送,這樣限制了短信的應用場景,只能根據業務進行消息定制了。本篇隨筆主要介紹阿里云的短信服務的發送處理。

      1、短信發送的處理介紹

      在短信發送中,阿里云提供自己的SDK封裝,以降低使用的難度,不過需要引入它提供的SDK類庫;本篇隨筆主要介紹基于HTTP方式進行自行的封裝處理,這部分代碼我從網上摘錄并進行一定的調整,測試成功。

      使用阿里云的短信服務,需要注冊登錄自己的阿里云控制臺,然后進入AccessKeys的處理界面

      然后系統會提示需要創建一個新的Key(如果沒有的話就創建,否則使用已有的即可)

      這里我們獲取到AccessKey ID 和Access Key Secret兩個關鍵信息,需要用在數據簽名的里面的。

      另外我們需要創建一個SignName,也就是簽名,一般為我們短信提示的公司名稱,如【廣州愛奇迪】這樣的字樣。

      短信是基于模板的,阿里云不能發送隨意的內容,因此只能基于模板發送,如驗證碼或者業務消息,有點類似微信的模板消息了,因此里面可以添加變量發送的。

      記得我以前寫過一個關于動態變量的信息發送的文章《一個包含動態變量的短信模板設計分析》,就是介紹如何處理變量模板消息的。

      阿里云默認提供了一些基礎模板,如下所示。

      一般我們業務可能還需要定制一些業務消息,那么需要審核通過才可以使用新增的模板消息。

      短信的發送可以利用API接口進行發送,如下所示是它的API說明

      如果需要采集用戶的回復信息,如一些隨訪記錄,那么需要做一個接口的處理,如下所示。

      發送短信的API接口詳細說明如下所示。

      其實請求信息比上面列出的信息多很多,包括秘鑰和數據加密信息等的處理,下面詳細給出代碼說明。 

       

      2、模板消息發送

       有了上面的信息介紹,我們大概了解了短信消息發送的處理規則了。

      實際上,發送信息的時候,我們可能需要添加很多參數信息,如下代碼所示。

      復制代碼
                  Dictionary<string, string> keyValues = new Dictionary<string, string>();//聲明一個字典
                  //1.系統參數
                  keyValues.Add("SignatureMethod", "HMAC-SHA1");
                  keyValues.Add("SignatureNonce", Guid.NewGuid().ToString());
                  keyValues.Add("AccessKeyId", AccessKeyId);
                  keyValues.Add("SignatureVersion", "1.0");
                  keyValues.Add("Timestamp", nowDate);
                  keyValues.Add("Format", "Json");//可換成xml
      
                  //2.業務api參數
                  keyValues.Add("Action", "SendSms");
                  keyValues.Add("Version", "2017-05-25");
                  keyValues.Add("RegionId", "cn-hangzhou");
                  keyValues.Add("PhoneNumbers", mobile);
                  keyValues.Add("SignName", SignName);
                  keyValues.Add("TemplateParam", "{\"code\":\"" + code + "\"}");
                  keyValues.Add("TemplateCode", templateCode);
                  keyValues.Add("OutId", "123");
      復制代碼

      具體我們來貼出不用SDK的短信發送輔助類,如下代碼所示。

      復制代碼
          /// <summary>
          /// 阿里短信發送
          /// </summary>
          public class SmsHelper
          {
              private const string endpoint = "dysmsapi.aliyuncs.com";
              private const string AccessKeyId = "你的秘鑰鍵";
              private const string AccessKeySecret = "你的秘鑰值";
              private const string SignName = "廣州愛奇迪";
      
              /// <summary>
              /// 短信驗證碼
              /// </summary>
              /// <param name="mobile"></param>
              /// <param name="code"></param>
              /// <returns></returns>
              public static string SendSms(string mobile, int code, string templateCode = "SMS_126645400")
              {
                  string nowDate = DateTime.Now.ToUniversalTime().ToString("yyyy-MM-dd'T'HH:mm:ss'Z'");//GTM時間
                  Dictionary<string, string> keyValues = new Dictionary<string, string>();//聲明一個字典
                  //1.系統參數
                  keyValues.Add("SignatureMethod", "HMAC-SHA1");
                  keyValues.Add("SignatureNonce", Guid.NewGuid().ToString());
                  keyValues.Add("AccessKeyId", AccessKeyId);
                  keyValues.Add("SignatureVersion", "1.0");
                  keyValues.Add("Timestamp", nowDate);
                  keyValues.Add("Format", "Json");//可換成xml
      
                  //2.業務api參數
                  keyValues.Add("Action", "SendSms");
                  keyValues.Add("Version", "2017-05-25");
                  keyValues.Add("RegionId", "cn-hangzhou");
                  keyValues.Add("PhoneNumbers", mobile);
                  keyValues.Add("SignName", SignName);
                  keyValues.Add("TemplateParam", "{\"code\":\"" + code + "\"}");
                  keyValues.Add("TemplateCode", templateCode);
                  keyValues.Add("OutId", "123");
      
                  //3.去除簽名關鍵字key
                  if (keyValues.ContainsKey("Signature"))
                  {
                      keyValues.Remove("Signature");
                  }
      
                  //4.參數key排序
                  Dictionary<string, string> ascDic = keyValues.OrderBy(o => o.Key).ToDictionary(o => o.Key, p => p.Value.ToString());
                  //5.構造待簽名的字符串
                  StringBuilder builder = new StringBuilder();
                  foreach (var item in ascDic)
                  {
                      if (item.Key == "SignName")
                      {
                      }
                      else
                      {
                          builder.Append("&").Append(specialUrlEncode(item.Key)).Append("=").Append(specialUrlEncode(item.Value));
                      }
                      if (item.Key == "RegionId")
                      {
                          builder.Append("&").Append(specialUrlEncode("SignName")).Append("=").Append(specialUrlEncode(keyValues["SignName"]));
                      }
                  }
                  string sorteQueryString = builder.ToString().Substring(1);
      
                  StringBuilder stringToSign = new StringBuilder();
                  stringToSign.Append("GET").Append("&");
                  stringToSign.Append(specialUrlEncode("/")).Append("&");
                  stringToSign.Append(specialUrlEncode(sorteQueryString));
      
                  string Sign = MySign(AccessKeySecret + "&", stringToSign.ToString());
                  //6.簽名最后也要做特殊URL編碼
                  string signture = specialUrlEncode(Sign);
      
                  //最終打印出合法GET請求的URL
                  string url = string.Format("http://{0}/?Signature={1}{2}", endpoint, signture, builder);
                  string result = GetHtmlFormUrl(url);
                  return result;
              }
      
      
              /// <summary>
              /// 短信接口C#調用方法
              /// </summary>
              /// <param name="url"></param>
              /// <returns></returns>
              private static string GetHtmlFormUrl(string url)
              {
                  string strRet = null;
                  if (url == null || url.Trim().ToString() == "")
                  {
                      return strRet;
                  }
                  string targeturl = url.Trim().ToString();
                  try
                  {
                      HttpWebRequest hr = (HttpWebRequest)WebRequest.Create(targeturl);
                      hr.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)";
                      hr.Method = "GET";
                      hr.Timeout = 30 * 60 * 1000;
                      WebResponse hs = hr.GetResponse();
                      Stream sr = hs.GetResponseStream();
                      StreamReader ser = new StreamReader(sr, Encoding.UTF8);
      
                      strRet = MessageHandle(ser.ReadToEnd());
                  }
                  catch (Exception ex)
                  {
                      strRet = "短信發送失敗!" + ex.Message;
                  }
                  return strRet;
              }
      
              /// <summary>
              /// 驗證手機號碼是否合法
              /// </summary>
              /// <param name="mobile">電話號碼</param>
              /// <returns></returns>
              public static bool IsMobile(string mobile)
              {
                  return System.Text.RegularExpressions.Regex.IsMatch(mobile, @"^1[3|4|5|7|8][0-9]\d{8}$");
              }
      
              /// <summary>
              /// URL編碼
              /// </summary>
              /// <param name="value"></param>
              /// <returns></returns>
              private static string specialUrlEncode(string temp)
              {
                  StringBuilder stringBuilder = new StringBuilder();
                  for (int i = 0; i < temp.Length; i++)
                  {
                      string t = temp[i].ToString();
                      string k = HttpUtility.UrlEncode(t, Encoding.UTF8);
                      if (t == k)
                      {
                          stringBuilder.Append(t);
                      }
                      else
                      {
                          stringBuilder.Append(k.ToUpper());
                      }
                  }
                  return stringBuilder.ToString().Replace("+", "%20").Replace("*", "%2A").Replace("%7E", "~");
              }
      
              /// <summary>
              /// HMACSHA1簽名
              /// </summary>
              /// <param name="accessSecret"></param>
              /// <param name="stringToSign"></param>
              /// <returns></returns>
              private static string MySign(string accessSecret, string stringToSign)
              {
                  try
                  {
                      var hmacsha1 = new HMACSHA1(Encoding.UTF8.GetBytes(accessSecret));
                      var dataBuffer = Encoding.UTF8.GetBytes(stringToSign);
                      var hashBytes = hmacsha1.ComputeHash(dataBuffer);
                      string stringbyte = BitConverter.ToString(hashBytes, 0).Replace("-", string.Empty).ToLower();
                      byte[] bytes = strToToHexByte(stringbyte);
                      return Convert.ToBase64String(bytes);
                  }
                  catch (Exception ex)
                  {
      
                      throw ex;
                  }
              }
              /// <summary>
              /// 字符串轉16進制字節數組
              /// </summary>
              /// <param name="hexString"></param>
              /// <returns></returns>
              private static byte[] strToToHexByte(string hexString)
              {
                  hexString = hexString.Replace(" ", "");
                  if ((hexString.Length % 2) != 0)
                      hexString += " ";
                  byte[] returnBytes = new byte[hexString.Length / 2];
                  for (int i = 0; i < returnBytes.Length; i++)
                      returnBytes[i] = Convert.ToByte(hexString.Substring(i * 2, 2), 16);
                  return returnBytes;
              }
      
              /// <summary>
              /// 消息處理機制
              /// </summary>
              /// <param name="str"></param>
              /// <returns></returns>
              private static string MessageHandle(string str)
              {
                  MessageModel message = JsonConvert.DeserializeObject<MessageModel>(str);
                  string result = "";
                  switch (message.Code)
                  {
                      case "OK":
                          result = "短信發送成功!";
                          break;
                      case "isp.RAM_PERMISSION_DENY":
                          result = "RAM權限DENY";
                          break;
                      case "isv.OUT_OF_SERVICE":
                          result = "業務停機";
                          break;
                      case "isv.PRODUCT_UN_SUBSCRIPT":
                          result = "未開通云通信產品的阿里云客戶";
                          break;
                      case "isv.PRODUCT_UNSUBSCRIBE":
                          result = "產品未開通";
                          break;
                      case "isv.ACCOUNT_NOT_EXISTS":
                          result = "賬戶不存在";
                          break;
                      case "isv.ACCOUNT_ABNORMAL":
                          result = "賬戶異常    ";
                          break;
                      case "isv.SMS_TEMPLATE_ILLEGAL":
                          result = "短信模板不合法";
                          break;
                      case "isv.SMS_SIGNATURE_ILLEGAL":
                          result = "短信簽名不合法";
                          break;
                      case "isv.INVALID_PARAMETERS":
                          result = "參數異常";
                          break;
                      case "isv.MOBILE_NUMBER_ILLEGAL":
                          result = "非法手機號";
                          break;
                      case "isv.MOBILE_COUNT_OVER_LIMIT":
                          result = "手機號碼數量超過限制";
                          break;
                      case "isv.TEMPLATE_MISSING_PARAMETERS":
                          result = "模板缺少變量";
                          break;
                      case "isv.BUSINESS_LIMIT_CONTROL":
                          result = "業務限流";
                          break;
                      case "isv.INVALID_JSON_PARAM":
                          result = "JSON參數不合法,只接受字符串值";
                          break;
                      case "isv.PARAM_LENGTH_LIMIT":
                          result = "參數超出長度限制";
                          break;
                      case "isv.PARAM_NOT_SUPPORT_URL":
                          result = "不支持URL";
                          break;
                      case "isv.AMOUNT_NOT_ENOUGH":
                          result = "賬戶余額不足";
                          break;
                      case "isv.TEMPLATE_PARAMS_ILLEGAL":
                          result = "模板變量里包含非法關鍵字";
                          break;
                  }
                  return result;
              }
      
          }
      
          internal class MessageModel
          {
              public string RequestId { get; set; }
              public string Code { get; set; }
              public string Message { get; set; }
          }
      復制代碼

      上面代碼不是我原創,聲明一下,我做了一些修改調整而已,方便輔助類的使用,我們輸入我們的企業的秘鑰鍵值,然后發送測試短信即可。

                  string tel = "18620292076";
                  string result = SmsHelper.SendSms(tel, 123456);
                  Console.WriteLine(result);

      發送測試,3~5秒就可以收到驗證碼信息的提示了,如下所示。

       以上就是短信消息的發送,希望對使用阿里云短信服務的開發人員有所幫助,輔助類直接就可以使用了。

      主要研究技術:代碼生成工具、會員管理系統、客戶關系管理軟件、病人資料管理軟件、Visio二次開發、酒店管理系統、倉庫管理系統等共享軟件開發
      專注于Winform開發框架/混合式開發框架、Web開發框架、Bootstrap開發框架、微信門戶開發框架的研究及應用。
        轉載請注明出處:
      撰寫人:伍華聰  http://www.iqidi.com 
          

      相關教程
      江苏快3 www.08588w.com | www.c300.cc | www.896883.com | 71366l.com | www.3301844.com | 44xx8331.com | www.618477.com | www.k3322.com | 158103.com | www.649477.com | www.c5c77.com | 110770.com | www.220716.com | www.38775cc.com | www.qian00.com | k1.z6528.com | www.81520l.com | www.1112558.com | 3846pp.com | www.98528c.com | www.hg418.com | 444000xx.com | www.756693.com | www.89599a.com | vns8vip.com | 01234ggg.com | www.rrle6.com | www.xc829.com | 55797c.com | www.314677.com | www.75jsjs.com | 335151.com | 500000393.com | www.80065f.com | www.7646.com | 55899j.com | 30006r.com | www.08299.com | www.85857l.com | 7935b.com | www.168323.com | www.875599.com | zzylc2.com | k99345.am | www.12455t.com | www.1108617.com | 1115675.com | 55005144.com | www.904820.com | www.621301.com | www.a17848.com | 80878p.com | www.444165.com | www.qmc0066.com | xpj61788.com | 8557k.com | www.786682.com | www.89677c.com | www.js46123.com | 3559ff.com | 06385050.com | www.912454.com | www.88325y.com | www.284444.me | 4036ll.com | www.5086c.com | www.o4042.com | www.1869f.com | 114la.com | www.178693.com | www.bjl917.com | www.hg3115.com | 923720.com | tyc6046.com | www.695899.com | www.11475.com | www.long6668.com | 7599xx.com | www.50024s.com | www.88166a.com | www.40818f.com | hg0555e.com | 2618e.com | www.401275.com | www.5953838.com | www.307922.com | www.67797h.com | 4066l.com | www.ch8123.com | www.3116i.com | www.133242.com | 2146h.com | 9895m.com | www.yl8553hb.com | www.988806.com | www.7435x.com | 50025522.com | 7172.us | www.61233hh.com | www.033008.com | www.527477.com | www.38138t.com | mgm3242t.com | www.4923h.com | www.caipiao88a.com | 59599z.com | 4775522.com | 2934j.com | www.914077.com | 5446cc.com | www.77801f.com | www.2289msc.com | www.18xinli.cc | p72227.com | www.655903.com | www.4323q.com | www.3116c.com | www.js607.com | www.aicaicc.com | vns345777.com | vns22.me | ks3334.com | www.173880.com | www.85090.com | www.5859118.com | www.5099oo.com | www.js1108.com | www.js3034.com | 2698r.com | 4018c.com | hg986.com | 6137c.com | www.39957g.com | www.89677p.com | www.20199qq.com | www.899238.com | www.06bwin.com | 6220l.com | 33382oo.com | 1443b.com | 20166.com | www.853548.com | www.4546800.com | www.46678.com | 3434kkk.com | 5219u.com | 776053.com | 5360m.com | www.340477.com | www.7449cc.com | www.06820h.com | www.3333yh.vip | www.55526l.com | www.hg7725.com | www.25288l.com | www.00829m.com | www.5559xj.com | 53206622.com | 61320099.com | zhcpoo.com | 253509.com | 67877u.com | 1429w.com | 248301.com | www.43131h.com | www.rcw789.com | www.592411.com | www.3126u.com | www.c668ln.com | www.xg189.com | www.33355508.com | bb2649.com | 4557.com | sbo333.com | 33599tt.com | 500000953.com | 0033d.cc | 21866q.com | 168cp-b.com | 59889a.com | jl777777.com | 3018nn.com | hg999333t.com | www.16055.com | www.8877gvb.com | www.12345605.cc | www.8577i.cc | www.984701.com | www.964688.com | www.788sb.21.sb | www.vns78999.com | www.pj8300.com | www.502000.com | www.xpj540.com | www.245899.com | www.15425.com | www.a81m.cc | www.tyc800.com | www.8838c.com | www.9679q.com | www.699888.com | www.0686111.com | 44hh8331.com | www.g67783.com | www.7669e.net | www.shenbo558.com | www.pj5905.com | www.55268kk.com | www.xpj2638.com | www.3066w.com | www.888c31.com | www.mgm868001.com | www.6687x.com | www.99552uu.com | www.1www.333777j.com | www.bwinyz05.com | www.6939w.com | www.00840d.com | www.hj2111.com | www.371935.com | 3202.com | 5533vn77.com | www.66652e.com | vipvip0000.com | 18887365.com | 88857.com | 65005i.com | 1259q.com | bet2020365.com | www.36166h.com | www.3416s.com | www.666937.com | 32424x.com | 32126.net | w4255.com | 797720.com | 06386969.com | 80850dd.com | www.668k8.com | www.hg58.pw | www.r948r.com | www.44118.net | www.xb8833.com | www.00889.com | www.35918y.com | www.643388.com | 0030.com | 3522i.vip | yhguangxi.vip | www.ag88100.com | www.vnsr2018g.com | www.895095.com | www.tyc357.com | www.43434688.com | www.vns8892.com | www.3157l.com | 01885j.com | 83377k.com | 2267w.com | 22299rr.com | www.yh567.com | www.v36.com | www.06386611.com | www.4809b.com | www.vns9958.com | www.cr3456.com | www.16181n.com | www.5647ii.com | www.07163d.com | www.682918.com | www.85088k.com | www.hotelisboa.com | www.609024.com | www.37377z.com | www.66332d.com | www.803241.com | zhcp47.com | 5856oo.com | www.7658800.com | www.yyyy0066.com | www.2111a.com | www.39cp.cc | www.250756.com | 88894f.com | so77777.cc | 1691899.com | www.d0709.com | FuXingCai.com | uuu8827.com | www.39695u.com | www.4446aaa.com | www.39500j.com | www.6364l.com | www.846661.com | d5959.com | 53262jj.com | www.629554.com | www.4940w.com | www.20899.com | www.3416e.com | wzyxwz.org | 22098m.com | www.25673a.com | www.1064g.com | www.60007c.com | www.621481.com | 15a11.net | 2805n.com | www.055888.com | www.hb858.cc | 84496677.com | 9646f.com | www.hd1239.com | www.55545r.com | www.tyc88555.com | www.247500.com | 59759i.vip | www.106165.com | yhsichun.vip | www.hg9812.com | www.c1432.com | www.803242.com | linxiangf.pw | 3189c.com | www.4938h.com | www.3w555.com | www.577983.com | 3678zzz.com | www.bl45.com | www.bwinyz09.com | www.2109s.com | 876878a.com | www.a2a333.cc | www.cn365o.com | www.827737.com | 047106.com | wlb555.com | www.37tyc.com | www.818993.com | www.112819.com | gg40033.com | 20055522.com | www.gg9702.com | www.5508.am | 69111i.com | 22ss8331.com | www.x100100.com | www.28000w.com | www.725660.com | 7555v.com | www.97567.com | www.77210g.com | www.682542.com | jj4255.com | www.tk48.com | www.2373t.com | nnn40033.com | www.a2a888.cc | www.16181k.com | www.394577.com | 00773p.com | www.androidappforxgsaimahui.com | www.5086a.com | 3202f.com | y1771.com | www.22gp.com | www.998855b.com | www.3126h.com | www.183587.com | am6868.cc | www.5446xx.com | www.328806.com | q61788.com | www.b3652.com | www.99094k.com | xpjdc.tw | www.dh03035.com | www.751828.com | www.226105.com | 444000vvv.com | www.a30666.vip | www.86267u.com | 3136gg.com | www.56655t.com | www.330831.com | 4997h.com | www.33678jj.com | www.547477.com | 4255xxx.com | www.695395.com | www.630901.com | www.235892.com | 33382yy.com | www.501333.com | www.910882.com | 7042004.com | www.xpj403.com | www.5095a.com | 4025h.com | www.c688.com | www.40288i.com | www.63606g.com | 3169i.com | www.8494c.com | www.55766.com | www.hy9881.com | xl18.org | www.32126g.net | www.38138n.com | 2018bet33.com | www.4972tt.com | www.48330p.com | 5004ee.com | www.797077.com | www.625477.com | 7377.com | www.12136t.com | 53206600.com | www.slr000.com | www.857981.com | 00ww8332.com | www.570337.com | 66671v.com | www.39543.com | www.533265.com | 33aa8332.com | www.hg7833.com | 3846u.com | www.tai55.com | www.66qxc.com | 61321111.com | www.hg274.com | www.36166v.com | 7893w15.com | 3122p.com | www.kj88822.com | www.691063.com | 2021vvv.com | www.1168i.com | www.431016.com | meigaomei2017.com | 39520.net | www.66mgm777.com | www.808910.com | 77992007.com | www.c2894.com | 16690077.com | www.7935444.com | www.772222.com | 33kbk.com | www.4972p.com | www.01883.cc | 33ww8331.com | www.63606j.com | c83b784w.com | www.9777hg.com | www.8008553.com | 3559aaa.com | www.4866a90.com | www.193629.com | 32355rr.com | www.77801m.com | 73055r.com | www.8967s.com | www.c3956.com | t58955.com | www.f72.com | www.610659.com | zhcp09.com | www.5981j.com | 30007d.com | xpj588.com | www.xpj1.net | lixingyoulun.com | www.7893w01.com | www.99638l.com | 1669b.com | www.299888.com | www.50051b.com | 01234h.com | www.hg2083.com | www.43818q.com | www.076591.com | www.777444f.com | www.87668c.com | 8037.com | www.4996xz.com | 22296ee.com | www.77msctyc.com | 35dd.vip | www.534359.com | 2214gg.com | www.0057a.com | cp11991.com | www.673888a.com | 5309p.com | www.js87882.com | xin98776.com | www.9187y.com | 73055b.com | www.7249j.com | 58532222.com | www.3668y.com | 500000595.com | www.okw4.com | www.hg44768.com | www.382780.com | www.40686b.com | www.371956.com | www.309993.com | bet365yazhou.com | www.33115rr.com | 776052.com | www.w2894.com | bet28b.com | www.22334100.com | 810pj.com | www.js403.com | red0035.com | www.86611u.com | www.8499p.com | 01885.tv | www.55676o.com | sss3405.com | www.255030.com | 3522xx.cc | www.749558.com | www.w695.com | z92266.com | www.3844d.com | 22betbet365.com | j7742.com | www.837771.com | www.zq.hk | by306.com | www.bet63w.com | 1213633.com | www.61655w.com | lch8898.com | www.230320.com | www.jxcp3333.com | 364493.com | www.3846f.com | d58955.com | www.1080.com | 99151r.com | www.444739.com | www.hjcp9999.com | 12742f.com | www.68568r.com | owlsllzv.cn | www.560758.com | www.83hg.com | 1592n.com | www.72265i.com | 0698b.com | www.47707.cc | xsj027.cc | www.517145.com | www.1115xj.com | www.983jc.com | www.09569d.com | www.1035e.com | feicai0354.com | www.9149d.com | jinguanylc9.com | www.50051c.com | 3648991.com | www.369061.com | www.567878.com | 47479.com | www.1108598.com | 93888js.com | www.hs6666.com | 04666o.com | www.bet73k.com | www.6033d.com | www.77801u.com | www.2090966.com | 95gamevip1.com | www.25673f.com | 7343355.com | www.65707l.com | www.033033u.com | 3550v.com | www.4727088.com | jsjlb5.com | www.66wcw.com | www.314455.com | 58000c.com | www.zpw100.com | 7141aa.com | www.629293.com | www.83568y.com | 4255.com | www.312660.com | www.205611.com | yd12306.com | www.xj7002.com | 48611.com | www.233434.com | www.0591sf.com | 71372226.com | www.61233r.com | 3178ww.com | 1468ddd.com | www.955244.com | 996622qq.com | www.7239f.com | www.boma0190.com | swtyhhh.com | www.77ok.com | 80850a.com | www.3978r.com | www.4107j.com | hd9909.com | www.998855aa.com | alpk44.com | www.c146.vip | 2698j.com | www.607325.com | www.757xpj.com | www.998632.com | www.026319.com | 433.com | www.5203666.com | 88562.com | 6137h.com | www.yh22338.com | 5168cc.cc | www.50051n.com | hgw168x.com | www.1035d.com | 111122mm.com | 339649.com | www.8882244.com | 3405dd.com | www.682021.com | www.wn285.com | 2306i.com | www.1368l.cc | www.499789.com | 2222buyu.com | www.80075d.com | www.6805pj.com | www.180435.com | www.c526688.com | 99111ll.com | 0600y.cc | www.3008553.com | www.yf156.com | 91019z.com | www.38345b.com | 9339999u.com | www.683505.com | www.xpj8818.com | 00778h.com | www.0014r.com | www.938q.cc | 915908761.com | www.jj0.net | www.7920o.com | www.pu3888.com | 3644h.com | www.918356.com | www.39333.com | 80060101.com | www.68993272.com | www.wnsr520.com | 22dd8331.com | www.163136.com | www.9895r.com | www.80088hg.com | pu0012.com | www.372477.com | www.222999qipai.com | www.3657c.com | 6594ii.com | www.e7764.com | 2019tt.cc | 80850aa.com | www.d80288.com | wnsr8802.com | 535app.cc | www.66095.cc | www.dzj.cm | www.m1862.com | ll40033.com | pj38839.com | www.7782y.com | www.9737jj.me | 131fff.net | 611666.com | www.bxcp4.com | www.6687c.com | www.35359193.com | 756756d.com | www.344747.com | www.hg860022.com | www.76775a.com | 3522s.vip | v1781.com | www.856659.com | www.8j3.com | www.76543i.com | 86611l.com | tz22777.com | www.3890v.com | www.735585.com | 5004.cc | ca5033.com | www.le520.com | www.04567c.com | js90055.com | 88850pp.com | www.1666b.com | 838388w.com | www.074wy.com | www.ibm888.net | hb9788.com | www.hg78777.com | www.365815h.com | 22098b.com | hg0000.com | www.618393.com | www.7240o.com | www.55060z.com | www.55225454.com | 0747dd.com | 3365.com | w69441133.com | 08530003.com | 79889x.com | www.550439.com | www.2934o.com | www.4323l.com | www.924924.com | www.55070z.com | www.l4042.com | www.yh556699.com | www.p32126.cc | 4636699.com | 500000412.com | mm1915.com | 4912d.com | 0055buyu.com | 7335t.com | mxc55.com | v1973.com | www.376387.com | www.916730.com | www.2350g.com | www.60007q.com | www.89777p.com | www.33987.com | www.hg8ww.com | www.85857k.com | www.mgdc48.com | www.238288.com | www.33318x.com | www.655666a.com | www.xinhao03.com | yyh916.com | 996622bb.com | hg3006.tw | 2805e.com | blr8033.com | 55588.com | x77304.com | 2018185188.com | 72345.com | x388388.com | 4488.cc | 3807z.com | 7555r.com | 51133eee.com | 57157j.com | 3530.com | 4541r.com | 4590oo.com | douguo.com | v5172.com | m4255.com | 518cp-0.com | 3678lll.com | 009900u.com | www.711863.com | www.7782m.com | www.js7581.com | www.q063801.com | www.5049y.com | www.89456.com | www.006084.com | www.76060r.com | 9964a.com | 70118b.com | 9646l.com | 1634q.com | bo9.co | www.369053.com | www.786251.com | www.flcb6.com | www.61655m.com | www.750041.com | www.42070014.com | www.792073.com | www.mgm868004.com | www.28000v.com | www.410083.com | www.899741.com | www.289333.com | 00773aa.com | 4288hh.com | 4995f.com | 28824p.com | zhcp34.com | www.743966.com | www.hczx6.com | www.98779.com | www.735518.com | www.js66988.com | www.b35nn.com | www.22vn777.com | www.530016.com | www.4546700.com | www.7920j.com | www.h6640.com | www.2324.com | www.2544.com | www.50788j.com | www.99677b.com | www.66653d.com | www.61655b.com | www.86267c.com | www.xy52.com | www.7239z.com | www.80767d.com | www.50026m.com | www.26878f.com | www.3416q.com | www.3416m.com | www.3890n.com | www.5522r.cc | www.106ak.com | www.7249m.com | www.4923q.com | www.66201.cc | www.qilc0.com | www.965191.com | www.700626.com | www.599494.com | www.791561.com | www.521787.com | www.363116.com | v3144.com | ly88888884.com | 806807.com | 6594ee.com | www.pj8491.com | www.dggcp100.com | www.hh4625.com | www.9478e.com | www.301345.com | 1775aa.com | 4461d.com | 888p1.cc | www.4972kk.com | www.818msc.net | www.xpjylc008.com | www.99638b.com | www.579411.com | 9912304.com | 3950a.com | uuu8827.com | www.555pj8.cc | www.377838.com | www.135539.com | www.912254.com | 44p1.cc | 61999.com | 8977.com | www.390338.com | www.4996nx.com | www.80767r.com | www.296380.com | 0698k.com | mm7742.com | www.3459t.com | www.cp48.com | www.7893w37.com | www.ylylc01.com | www.5cpb.com | www.370583.com | 5443rr.com | 3890z.com | v0142.com | 4165x.com | 20055599.com | v5429.com | 1705v.com | www.427567.com | www.993456.com | www.57800k.com | www.35898c.com | www.33598h.com | www.550214.com | dz826.com | x8519.com | 2643l.com | www.675621.com | www.91779t.com | www.18005.com | 44077x.com | 13222t.com | www.8694k.com | www.00772h.com | www.9356q.com | 0241h.com | 3435.com | www.7830d.com | www.dsn96.net | www.6364w.com | 1105596.com | 9068ff.com | www.05125b.com | www.567678.cc | www.c5839.com | 22207r.com | 8036v.com | www.350558.com | www.37377w.com | www.810629.com | cj807.com | 7742ii.com | 6766zz.com | www.653505.com | www.848883.com | www.55755.com | www.946854.com | www.934177.com | 06006u.com | 36407755.com | wfcp777666.com | www.39695s.com | www.jjjj44444.com | www.4809t.com | www.hqcp2.com | www.128368.com | cp088s.com | 88021a.com | www.346346.com | www.blc8.com | xx888u.com | www.1869b.com | www.g32939.com | www.c135.vip | ss1915.com | www.ylg2222.com | www.b35ww.com | www.775780.com | qq444000.com | www.653501.com | www.1754u.com | www.35918q.com | www.308126.com | 4880e.com | feicai0574.com | www.3024.com | www.26123cc.com | www.hc8858.com | vns7.vip | 33115cc.com | www.81321a.com | www.js18456.com | www.71399a.com | 22299ll.com | www.58atv.com | www.3416w.com | 4060.com | www.326365.com | www.4102g.com | www.50080e.com | 214kf.com | www.1234cp.me | www.84499s.com | www.35155v.com | vns33.me | www.660649.com | www.xpj8558.com | www.900140.com | 66287r.com | 668cp66.com | www.f92776.com | www.hm3666.com | 1305009.com | da620.com | www.3125008.com | www.86267c.com | 4774b.com | www.6535.com | www.186664.com | 63305v.com | www.422442.com | www.js9996.com | 73055v.com | 8030t.com | www.88325r.com | www.530396.com | 81366.com | www.2078a.com | www.81520v.com | 2546n.com | 55818w.com | www.138msc.com | www.77803b.com | bogou800.vip | 3148.com | www.6880mm.com | 4647.net | 5003ff.com | www.706139.com | 5656394.com | 2924444.com | www.792065.com | 88021.com | 28288v.com | www.am187.com | www.43818l.com | 4546vip8.com | www.bg999666.com | www.js56775.com | jinguan5555.com | 8577n.cc | www.5516008.com | www.167356.com | 915620.com | www.4102j.com | rr5144.com | www.1919sun.com | www.9155a.cc | 4165d.com | www.ok533.com | www.6769l.com | uc08.cc | www.u8867.com | www.wqdlcn.com | 61329966.com | www.hg62228.com | www.vn888234.cc | 2805q.com | xpj8118.com | www.huangma29.com | www.128368.com | www.1869i.com | www.91709.com | j2554.com | www.09883.com | www.348077.com | 3434ppp.com | www.102665.com | www.544093.com | 3258y.com | www.c1432.com | 129880.net | 228888.com | www.38775jj.com | 26444h.com | www.yh7890.com | www.hg77704.com | 0805c.com | www.ok633.com | www.370837.com | 1408m.com | www.77801s.com | 50038q.com | www.xh538.com | www.81678d.com | 22589.com | www.120550.com | www.536678.com |