博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
.NET短信接口 实例
阅读量:5086 次
发布时间:2019-06-13

本文共 2391 字,大约阅读时间需要 7 分钟。

  <!--短信接口Url-->
  <add key="SendUrl" value="http://api.sms7.cn/tx/" />
  <!--用户名-->
  <add key="Uid" value="98816" />
  <!--密码-->
  <add key="Pwd" value="std5805122" />
  <!-- ================== 8:短信接口配置 END================== -->
using DotNet.Kernel;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Web.Security;
namespace DotNet.Utilities
{
    public class MessageInterface
    {
        #region 数据发送
        public static bool send(string strMessage, string Mobile)
        {
            string sendurl = ConfigHelper.GetValue("SendUrl");//"http://api.sms7.cn/tx/";
            string mobile = Mobile;//发送号码
            string uid = ConfigHelper.GetValue("Uid");
            string pwd = ConfigHelper.GetValue("Pwd");
            string strContent ="";
            //判断是否已存在“【刷咯】”
            if (strMessage.IndexOf("【刷咯】") > 0)
            {
                strContent = strMessage;
            }
            else
            {
                strContent = strMessage + "【刷咯】";
            }
            StringBuilder sbTemp = new StringBuilder();
            string Pass = FormsAuthentication.HashPasswordForStoringInConfigFile(pwd + uid, "MD5"); //密码进行MD5加密
            //POST 传值
            sbTemp.Append("uid=" + uid + "&pwd=" + Pass + "&mobile=" + mobile + "&content=" + strContent);
            byte[] bTemp = System.Text.Encoding.GetEncoding("GBK").GetBytes(sbTemp.ToString());
            String postReturn = doPostRequest(sendurl, bTemp);
            DotNet.Kernel.DbLog.WriteLog("Post response is: " + postReturn);//测试返回结果
            if (postReturn.Contains("100"))
            {
                return true;
            }
            else
            {
                return false;
            }
        }
        //POST方式发送得结果
        private static String doPostRequest(string url, byte[] bData)
        {
            System.Net.HttpWebRequest hwRequest;
            System.Net.HttpWebResponse hwResponse;
            string strResult = string.Empty;
            try
            {
                hwRequest = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(url);
                hwRequest.Timeout = 5000;
                hwRequest.Method = "POST";
                hwRequest.ContentType = "application/x-www-form-urlencoded";
                hwRequest.ContentLength = bData.Length;
                System.IO.Stream smWrite = hwRequest.GetRequestStream();
                smWrite.Write(bData, 0, bData.Length);
                smWrite.Close();
            }
            catch (System.Exception err)
            {
                DbLog.WriteException(err);
                return strResult;
            }
            //get response
            try
            {
                hwResponse = (HttpWebResponse)hwRequest.GetResponse();
                StreamReader srReader = new StreamReader(hwResponse.GetResponseStream(), Encoding.ASCII);
                strResult = srReader.ReadToEnd();
                srReader.Close();
                hwResponse.Close();
            }
            catch (System.Exception err)
            {
                DbLog.WriteException(err);
            }
            return strResult;
        }
        #endregion
    }
}

转载于:https://www.cnblogs.com/wybshyy/p/5847864.html

你可能感兴趣的文章
创龙TMS320C6748开发板串口和中断学习笔记
查看>>
01 C语言程序设计--01 C语言基础--第3章 基本数据类型01
查看>>
Java 反射机制详解(上)
查看>>
oracle drop table(表)数据恢复方法
查看>>
编译LAMP部署动态网站环境
查看>>
Java 8 新的时间日期 API
查看>>
PHP基本语法
查看>>
Linux命令应用大词典-第8章 日期和时间
查看>>
jenkins+maven+svn构建项目,及远程部署war包到tomcat上
查看>>
图解CSS3之弹性盒模型篇(display:box / display:inline-box)
查看>>
【iOS】UIImageView 点击事件
查看>>
HDOJ 1233 还是畅通工程
查看>>
垃圾回收机制
查看>>
C# lambda表达式及初始化器
查看>>
Spring Boot 静态资源处理
查看>>
nginx vhost配置
查看>>
Vue 爬坑之路(二)—— 组件之间的数据传递
查看>>
Mysql客户端下载地址
查看>>
Apache 2.2, PHP 5, and MySQL 5
查看>>
Atitit 列出wifi热点以及连接
查看>>