摘要:最近一个微信开发的项目里需要发送微信模板消息给卖家或者供应商等,微信开发其实也就按照微信的官方接口要求组装起来即可,下面简单介绍一下我的微信模板发送代码。
最近一个微信开发的项目里需要发送微信模板消息给卖家或者供应商等,微信开发其实也就按照微信的官方接口要求组装起来即可,下面简单介绍一下我的微信模板发送代码。
1.获取access token,至于access token是什么,大家可以自行微信接口文档看一下,这边不多说
获取access token我这边主要是用定时器没大概2分钟获取一次,每天获取的次数是100000次,用法如下:
View Code
2.定义消息主体内容,区分大小写(经过测试必须小写,java的风格)
实体如下:
View Code
需要注意的是因为我们这边是内部调用不走soap协议,如果走soap协议, Dictionary<string, MessageData>是不能被二进制序列化的
3.编写发送微信消息方法
代码如下:
1 public static string SendTempleteMessage(WeChatTemplatecsMsg messageInfo, string access_token) 2 { 3 try 4 { 5 //临时测试脚本,正式使用将换成模板配置文件(等需求组确定模板之后) 6 string jsonDataParams = messageInfo == null 7 ? "" : SerializationEx.ToJson(messageInfo); 8 string requestUrl = string.Format(ConfigBLL.URL_POSTTEMELETETEXTMESSAGE, access_token); 9 return WebAPITransfer.Request(requestUrl,"POST", jsonDataParams);10 }11 catch (Exception ex)12 {13 return ex.Message;14 }15 }
主要就是将实体转为json,没什么难度
4.定义xml配置文件
因为刚刚上面那个实体中,除了data和touser需要后期代码取值,三个是可以配置的,故写在配置文件中
View Code
5.编写反序列化xml文件到对象的类
首先需要编写一个与xml关联的类,代码如下:
View Code
然后编写反序列化xml的公共类,放到公共类库中,代码如下:
1 public static T FromXmlFile<T>(string xmlFile)2 {3 if ( !File.Exists(xmlFile)) throw new ArgumentNullException(xmlFile, "文件不存在!");4 using (FileStream fs = new FileStream(xmlFile, FileMode.Open, FileAccess.Read))5 {6 XmlSerializer ser = new XmlSerializer(typeof(T));7 return (T)ser.Deserialize(fs);8 }9 }
6.因为微信模板消息体都是固定的五个参数,故把获取微信模板实体的方法放到一个公共的类中
代码如下:
View Code
7.找到需要发送微信的环节,添加发送微信消息的代码
代码如下:
View Code
总结:
整个流程按步骤下来大家发现其实也没啥难度,第三方接口开发只要对方接口描述比较准确,各种规定比较明确,基本就是封装成接口需要的东西就完事了
以上,关于微信开发的全部内容讲解完毕啦,欢迎大家继续关注!更多关于微信开发的干货请关注职坐标微信开发频道!
您输入的评论内容中包含违禁敏感词
我知道了
请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号