.net 移动mas短信接口开发
接口文档下载

1.移动后台接入用户新增(选择HTTP协议)

2.后台代码
/// <summary>
/// 用户名
/// </summary>
private readonly static string UserName = ConfigurationManager.AppSettings["SmsUserName"];
/// <summary>
/// 密码
/// </summary>
private readonly static string UserPwd = ConfigurationManager.AppSettings["SmsUserPwd"];
/// <summary>
/// 企业名称
/// </summary>
private readonly static string EcName = ConfigurationManager.AppSettings["SmsEcName"];
/// <summary>
/// 签名
/// </summary>
private readonly static string Signature = ConfigurationManager.AppSettings["SmsSign"];
public static MessageRes Send(string mobiles, string content)
{
JObject obj = new JObject();
var addSerial = "";//可以随便写,三位数
obj.Add("ecName", new JValue(EcName));
obj.Add("apId", new JValue(UserName));
obj.Add("secretKey", new JValue(UserPwd));
obj.Add("mobiles", new JValue(mobiles));
obj.Add("content", new JValue(content));
obj.Add("sign", new JValue(Signature));
obj.Add("addSerial", new JValue(addSerial));
var mac = EcName + UserName + UserPwd + mobiles + content + Signature + addSerial;
var mac1 = UserMd5(mac);//要进行32位MD5加密
var length = mac1.Length;
obj.Add("mAC", new JValue(mac1));
string paras = obj.ToString();
var jiami = Base64Code(paras);//传参数前要进行64位加密
System.Net.WebClient pWebClient = new System.Net.WebClient();
pWebClient.Headers.Add("Content-Type", "application/json;charset=UTF-8"); //charset=UTF-8
pWebClient.Headers.Add(HttpRequestHeader.Accept, "*/*");
pWebClient.Headers.Add("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)");
byte[] returnBytes = pWebClient.UploadData("http://112.35.1.155:1992/sms/norsubmit", "POST", System.Text.Encoding.UTF8.GetBytes(jiami));
var temp = System.Text.Encoding.UTF8.GetString(returnBytes);
return JsonConvert.DeserializeObject<MessageRes>(temp);
}
/// <summary>
/// Base64加密
/// </summary>
/// <param name="Message"></param>
/// <returns></returns>
public static string Base64Code(string Message)
{
byte[] bytes = Encoding.UTF8.GetBytes(Message);//这里要注意不是Default 因为Default默认GB2312
return Convert.ToBase64String(bytes);
}
/// <summary>
/// Md5 加密
/// </summary>
/// <param name="str"></param>
/// <returns></returns>
public static string UserMd5(string str)
{
string cl = str;
string pwd = "";
MD5 md5 = MD5.Create();//实例化一个md5对像
// 加密后是一个字节类型的数组,这里要注意编码UTF8/Unicode等的选择
byte[] s = md5.ComputeHash(Encoding.UTF8.GetBytes(cl));
// 通过使用循环,将字节类型的数组转换为字符串,此字符串是常规字符格式化所得
for (int i = 0; i < s.Length; i++)
{
// 将得到的字符串使用十六进制类型格式。格式后的字符是小写的字母,如果使用大写(X)则格式后的字符是大写字符
pwd = pwd + s[i].ToString("x2");
}
return pwd;
}
public class MessageRes
{
public string msgGroup { get; set; }
public string rspcod { get; set; }
public bool success { get; set; }
}
参考地址:https://www.136.la/net/show-22990.html
.net 移动mas短信接口开发的更多相关文章
- 玄武短信接口和移动MAS短信接口的API封装
直接上代码,关键点: 133行的敏感词过滤 176行的6位扩展码写入 using System; using System.Collections.Generic; using System.Linq ...
- 阿里云短信接口开发实践(Java
随着互联网的兴起,各行各业的需求都在不断的增加.随着业务的扩大,企业给用户发送短信验证码的业务,也是如火如荼.在这里,calvin给各位开发者推荐阿里云短信平台.原因有二:1.接入较简单,开发成本低 ...
- asp.net mvc短信接口调用——阿里大于API开发心得
互联网上有许多公司提供短信接口服务,诸如网易云信.阿里大于等等.我在自己项目里需要使用到短信服务起到通知作用,实际开发周期三天,完成配置.开发和使用,总的说,阿里大于提供的接口易于开发,非常的方便,短 ...
- 阿里大鱼短信接口整合Tp3.2.3开发整理
阿里大鱼 http://www.alidayu.com/ 的短信接口总体是不错的,别安驹个人认为不管是从性价比还是稳定性上都是跟同类的短信接口好些,毕竟是大公司的东西不会差到哪去.下面把之前开发的短信 ...
- PHP九大接口视频教程( 支付宝,QQ,短信接口,微信接口开发, 支付宝即时到账接口开发三级分销全套)
PHP九大接口视频教程( 支付宝,QQ,短信接口,微信接口开发, 支付宝即时到账接口开发三级分销全套) 需要的联系我:QQ: 1844912514 PHP九大接口视频教程( 支付宝,QQ,短信接口 ...
- destoon短信接口修改方法
destoon是很优秀的B2B行业站程序.程序模块化开发契合度很高,二次开发起来也很顺畅.数据缓存,权限分配,SEO功能方面都不错. 但是在使用这套程序的时候,常常要用到发送短信的功能,而destoo ...
- asp调用短信接口实现用户注册
前几天做一个asp语言开发的网站需要实现用户注册短信验证功能,就研究了一下如何实现,简单给大家分享下调用过程. 首先需要找到一个第三方短信接口,当时用的是动力思维乐信的短信接口. 首先需要先注册个动力 ...
- 遇到短信轰炸,别人换ip调你的短信接口怎么办
前端开发者很容易暴露自己的请求地址和参数,我们都知道,一个h5页面,按 F12 是可以看到页面的源码的,所以经常很多人会利用这一点恶意调取别人的接口. 我们公司出现了好多次短信接口被大量调用,导致一天 ...
- 五、K3 WISE 开发插件《K3 Wise 群发短信配置开发(二)之短信群发配置》
开发环境:K/3 Wise 13.0.Sql Server 2005 目录 一.开启Sql Server Agent代理服务 二.短信发送原理 三.编写存储过程 四.开启Sql Server作业 一. ...
- 五、K3 WISE 开发插件《K3 Wise 群发短信配置开发(一)之短信平台配置》
开发环境:K/3 Wise 13.0 目录 一.创建短信数据库 二.配置短信接口 三.设置帐套关键字 四.查询短信余额 一.创建短信数据库 打开帐套管理: 账号默认为Admin,密码不填: 菜单“系统 ...
随机推荐
- 【Java Web】项目通用返回模块ServerResponse:枚举code状态码、泛型返回值、序列化注解限制数据
一.枚举类编写ResponseCode package com.boulderaitech.common; /** * 编写枚举类的步骤 * (1)编写所需的变量 * (2)编写枚举类构造方法 * ( ...
- 【Phoenix】简介、架构、存储、入门、常用表操作、表的映射方式、配置二级索引
一.Phoenix简介 1.定义 构建在 HBase 之上的开源 SQL 层 可以使用标准的 JDBC API 去建表, 插入数据和查询 HBase 中的数据 避免使用 HBase 的客户端 API ...
- 线上服务异常的定位、处理与优化的探索 - 第三章 Java虚拟机
Java虚拟机 之所以引入关于JVM的篇章,是发现多数项目发生的线上问题很大的几率源自JVM调优配置不当引起.对JVM的内存模型.GC垃圾回收机制.调优方式有一个系统化的了解后,可以快速处理或避免 ...
- webflux延迟队列逻辑更改过程记录
title : webflux延迟队列逻辑更改过程记录 author : simonLee date : 2022/11/22 10:26 目录 webflux延迟队列逻辑更改过程记录 一.问题背景 ...
- 第三篇:前端基础之JavaScript
前端基础之JavaScript JavaScript概述 ECMAScript和JavaScript的关系 1996年11月,JavaScript的创造者--Netscape公司,决定将JavaS ...
- vue 引入vant 上传图片oss处理
<van-uploader :before-read="beforeRead" v-model="product.images" max-size=&qu ...
- APICloud平台使用融云模块实现音视频通话实践经验总结分享
需求概要:实现视频拨打.接听.挂断.视频界面大小窗口.点击小窗口实现大小窗口互换. 实现思路:一方拨打后,另一方要能收到相应事件,然后接听.接通后,渲染对方视频画面.那么己方视频画面什么时候渲染呢?对 ...
- Spring 和 Spring MVC的区别
Spring 和 Spring MVC的区别 学习Spring MVC也有几天时间了,那么Spring和Spring MVC的区别到底在哪里,二者是什么关系呢?认为二者是一个东西那肯定是不对的,而 ...
- 04-Sed操作参数
1 Sed操作参数 1.1 s--替换 s表示替换(substitute)文件内的字符串. [address1],[address2]s/pattern/replacement/[flag] # s/ ...
- 模板层之标签、自定义模板语法、母版(模版)的继承与导入、模型层前期准备知识点、ORM常用关键字
今日内容概要 模板层之标签 if判断 {% if 条件1 %} #条件1成立 <p>Hello!</p> #执行 {% elif 条件2 %} #条件1不成立 条件2成立 &l ...