企业短信通 C# HTTP接口 发送短信

/*
功能:		企业短信通 C# HTTP接口 发送短信
修改日期:	2014-09-01
说明:		http://api.cnsms.cn/?ac=send&uid=用户账号&pwd=MD5位32密码&mobile=号码&content=内容
状态:
	100 发送成功
	101 验证失败
	102 短信不足
	103 操作失败
	104 非法字符
	105 内容过多
	106 号码过多
	107 频率过快
	108 号码内容空
	109 账号冻结
	110 禁止频繁单条发送
	111 系统暂定发送
	112 号码不正确
	120 系统升级
*/
using System;
using System.Text;
using System.Net;
using System.IO;
using System.Data;

namespace EsmsTest
{
    class SendEsms
    {
        static void Main(string[] args)
        {
            string strContent = "企业短信通 测试c#";
			//GET 方式
           String getReturn = doGetRequest("http://api.cnsms.cn/?ac=send&uid=100226&pwd=fa246d0262c3925617b0c72bb20eeb1d&mobile=13585519197,13900008888&content=" + strContent);
           Console.WriteLine("Get response is: " + getReturn);
           StringBuilder sbTemp = new StringBuilder();

			//POST
            sbTemp.Append("ac=send&uid=70299999&pwd=fa246d0262c3925617b0c72bb20eeb1d&mobile=13339196131,15375379376&content=" + strContent);
            byte[] bTemp = Encoding.ASCII.GetBytes(sbTemp.ToString());
            String postReturn = doPostRequest("http://api.cnsms.cn/", bTemp);
            Console.WriteLine("Post response is: " + postReturn);

        }

        //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)
            {
                WriteErrLog(err.ToString());
                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)
            {
                WriteErrLog(err.ToString());
            }

            return strResult;
        }
        //GET方式发送得结果
        private static String doGetRequest(string url)
        {
            HttpWebRequest hwRequest;
            HttpWebResponse hwResponse;

            string strResult = string.Empty;
            try
            {
                hwRequest = (System.Net.HttpWebRequest)WebRequest.Create(url);
                hwRequest.Timeout = 5000;
                hwRequest.Method = "GET";
                hwRequest.ContentType = "application/x-www-form-urlencoded";
            }
            catch (System.Exception err)
            {
                WriteErrLog(err.ToString());
                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)
            {
                WriteErrLog(err.ToString());
            }

            return strResult;
        }

        private static void WriteErrLog(string strErr)
        {
            Console.WriteLine(strErr);
            System.Diagnostics.Trace.WriteLine(strErr);
        }
    }
}
返回结果

复制

100

获取余额

请求

复制

/*
功能:	企业短信通 C#  HTTP接口 取余额
修改日期:2014-09-01
说明:	http://api.cnsms.cn/?ac=gc&uid=用户账号&pwd=MD5位32密码
状态:
	100 发送成功
	101 验证失败
	102 短信不足
	103 操作失败
	104 非法字符
	105 内容过多
	106 号码过多
	107 频率过快
	108 号码内容空
	109 账号冻结
	110 禁止频繁单条发送
	111 系统暂定发送
	112 号码不正确
	120 系统升级
*/
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using Present.Model;
using Present.DAL;
using Present.BLL;
using System.Data.SqlClient;
using System.Text;
using System.Net;
using System.IO;
using System.Globalization;
using System.Security.Cryptography;

public partial class _Default : System.Web.UI.Page
{
    #region 短信发送
    protected void Button2_Click(object sender, EventArgs e)
    {
		string uid="100226";			//用户名
		string pass = "100226";	//密码

        StringBuilder sbTemp = new StringBuilder();
		pass = FormsAuthentication.HashpwdForStoringInConfigFile(pass, "MD5"); //密码进行MD5加密
        //POST 传值
        sbTemp.Append("ac=gc&uid="+uid+"&pwd=" + pass );
        byte[] bTemp = System.Text.Encoding.GetEncoding("GBK").GetBytes(sbTemp.ToString());

        String postReturn = doPostRequest("http://api.cnsms.cn/", bTemp);
        Response.Write("Post response is: " + postReturn);  //测试返回结果
    }
    //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)
        {
            WriteErrLog(err.ToString());
            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)
        {
            WriteErrLog(err.ToString());
        }

        return strResult;
    }
    private static void WriteErrLog(string strErr)
    {
        Console.WriteLine(strErr);
        System.Diagnostics.Trace.WriteLine(strErr);
    }
    #endregion
}
返回结果

复制

100||22348
时间: 2024-08-11 09:45:30

企业短信通 C# HTTP接口 发送短信的相关文章

android 中调用接口发送短信

android中可以通过两种方式发送短信 第一:调用系统短信接口直接发送短信:主要代码如下: Java代码   //直接调用短信接口发短信 SmsManager smsManager = SmsManager.getDefault(); List<String> divideContents = smsManager.divideMessage(content); for (String text : divideContents) { smsManager.sendTextMessage(&

redis 基本操作-python 使用redis-手机验证接口-发送短信接口

目录 复习 今日内容 redis python使用redis 手机验证接口 发送短信接口 复习 """ 1.git项目开发 提供公钥成为开发者.copy项目.开发项目 先commit.再pull(可能出现冲突).最后push 特殊功能可以新建dev的子分支进行开发:git checkout -b 子分支, 切换回dev分支合并子分支内容:git merge 子分支 2.短信 注册并申请通信短信服务应用 安装指定模块,根据申请的应用配置得到发送短信的对象,对象调用方法完成短信的

通过第三方接口发送短信验证码/短信通知

需求:将首次交付密码为公共默认密码的方式改为点击入职功能,用短信方式发送系统自动生成的八位含数字.大小写字母和特殊符号生成的密码.短信发送服务由云通信http://www.yuntongxun.com/提供. 随机密码生成方法:  /**      * 生成随即密码      * @author chao.gao      * @param pwd_len 生成的密码的总长度      * @return 密码的字符串      */     public static String genRa

Python使用redis-手机验证接口-发送短信验证

python使用redis 安装依赖 >: pip3 install redis 直接使用 import redis r = redis.Redis(host='127.0.0.1', port=6379) 连接池的使用 import redis pool = redis.ConnectionPool(host='127.0.0.1', port=6379) r = redis.Redis(connection_pool=pool) 支持高并发 缓存使用:要额外的安装django_redis模块

发送短信——java

闲来无事研究一下调用第三方接口发送短信的技术 这一次我们使用阿里的短信服务 一.进行平台相关服务的注册和设置 下面请参照阿里的短信服务文档进行设置,只要按照文档步骤来差不多30分钟就能搞定服务注册: 阿里云短信服务文档使用指引 更新时间:2017-12-05 16:23:43 短信使用流程见下图: 入驻阿里云 1.阿里云注册入口:点击注册页面 2.实名认证:点击进行实名认证 实名认证相关帮助链接:①查看如何选择实名认证方式/实名认证介绍方式集锦,②个人客户如何完成实名认证,③企业如何完成实名认证

如何使用微信小程序云函数发送短信验证码

其实微信小程序前端和云端都是可以调用短信平台接口发送短信的,使用云端云函数的好处是无需配置域名,也没有个数限制. 本文使用的是榛子云短信平台(http://smsow.zhenzikj.com) ,SDK下载: http://smsow.zhenzikj.com/doc/sdk.html 1. 安装下载后的SDK在cloudfunctions文件夹下会包含3个云函数文件夹,如下: 由于目前IDE没有云函数导入功能,您需要手工创建同名的云函数,然后将云函数下的文件手工拷进去 注:下载的SDK是一个

阿里大于发送短信(java)

一.短信签名设置 1.短信签名是什么? 签名是在短信内容开始或者末尾跟的品牌或者应用名称,设置签名有一下几个好处:增加品牌的曝光度,增强用户的记忆让用户能更清楚的知道正在使用的应用. 2.签名可不可以不设置? 如果您不设置签名,您通过接口发送的短信将很可能会进入短信审核流程(注:进入该流程需要短信发送平台的客服人工审核,将会影响短信的发送和到达时间)或者可能直接被网关驳回,所以,为了您平台用户使用短信的稳定性,设置短信签名是十分必要的. 3.短信签名怎么设置? 一般签名设置为您的品牌名.应用名.

移动互联网(一)短信和彩信等接口开发封装

在这个项目中涉及到了短信和彩信等功能,这个算是一个项目重要组成部分,曾经想过这个功能怎么开发,例如在我们永和系统中有很多订单,可以给用户办理会员卡等业务如何让用户及时知道自己卡里的消费情况?如何让用户心中存在安全感,试想想在你的银行卡每次消费或者转入.转出每一笔款的时候都有短信提示,你是不是无意中增加了一份安全感呢? 大家在想想目前的各类门户网站,以及我们常用的CSDN等论坛都提供有短信登录.以及短信验证码.短信注册等等同短信沾边的业务内容,所有的这些都是一个思想提高系统灵活性.易用性.安全性,

网站登录发送短信提醒

前端时间做网站,客户对用户帐户安全要求比较高,要求账户登录需要有短信提醒,下面是实现的一些核心代码分享给大家: 这里面用到的短信接口,是第三方短信接口服务商-动力思维乐信,如果对调用接口不太了解的可以,到他们的网站(www.lx598.com )看下API文档和demo. 主要代码如下: 1.action: /** * 登录 * * @return */ @Action(value = "login") public void login() { PrintWriter out; St