微信公众平台C#开发系列(十三):模板消息-获得模板ID

微信公众平台
81
微信公众平台
C#开发系列
模板ID

使用微信公众平台接口获取推送模板消息的模板ID

从行业模板库选择模板到帐号后台,获得模板ID的过程可在微信公众平台后台完成。为方便第三方开发者,提供通过接口调用的方式来获取模板ID,具体如下:

官方文档地址

https://developers.weixin.qq.com/doc/offiaccount/Message_Management/Template_Message_Interface.html#

首先先去微信公众测试号 管理后台添加 测试消息模板

微信公众测试号 管理后台添加 测试消息模板

填写模板内容 这里以文档里的例子为例(注意参数{{}}大括号之间不能有空格)

微信公众测试号 管理后台添加 测试消息模板

添加完成后

微信公众测试号 管理后台添加 测试消息模板

获得模板ID

根据文档我们先定义一个MessageTemplateIdResponse类继承 ErrorMessage 用于解析接口结果

ErrorMessage 公共类参考 : 微信公众平台C#开发系列(四):获取access token凭证

namespace YuanTK.WeiXin.Wrapper
{
    /// 
    /// 获取消息模板Id结果
    /// 
    public class MessageTemplateIdResponse : ErrorMessage
    {
        /// 
        /// 模板Id
        /// 
        public string template_id { get; set; }
    }
}

定义一个MessageTemplateId方法类继承WeiXinRequest 和接口IWeiXin

namespace YuanTK.WeiXin
{
    /// 
    /// 获取消息模板ID
    /// 
    public class MessageTemplateId: WeiXinRequest, IWeiXin 
    {
        /// 
        /// 接口地址
        /// 
        String api;


        object _RequestData;

        /// 
        /// 接口调用凭证
        /// 
        /// 
        /// 模板库中模板的编号,有“TM**”和“OPENTMTM**”等形式
        public MessageTemplateId(string access_token,string template_id_short)
        {
            _RequestData = new { template_id_short = template_id_short };
            ///初始化接口地址
            api = $"https://api.weixin.qq.com/cgi-bin/template/api_add_template?access_token={access_token}";
        }

        /// 
        /// 调用接口获取结果
        /// 
        /// 
        public MessageTemplateIdResponse GetResponse()
        {
            var jSetting = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
            string poststr = Newtonsoft.Json.JsonConvert.SerializeObject(this._RequestData, Formatting.Indented, jSetting);
            return this.Post(api, poststr);
        }
    }
}

调用代码例子

string access_token = token.access_token;
IWeiXin api = new MessageTemplateId(access_token, "1");
MessageTemplateIdResponse response = api.GetResponse();

微信公众号凭证access_token如何获取?

调用成功返回的结果

由于template_id_short 这个参数测试号没找到 所以接口都是错误返回 实际好像也没怎么用到这个参数 这里就不截取运行图了

highlight代码高亮插件怎么实现代码显示行号效果?
.NET5 webApi项目接收HttpPost文本流数据
微信公众平台C#开发系列(十二): 模板消息-设置微信消息的所属行业
Microsoft SQL Server 2008 R2  不同版本永久安装激活序列号
在线工具_生成带Logo的二维码图
vs编译时报错 不安全代码只会在使用 /unsafe 编译的情况下出现
 C# 实现 Rsa字符串非对称加密简单例子
微信公众平台C#开发系列(九):删除自定义菜单
解决html2canvas在 iOS15系统浏览器中截图后自动刷新页面问题
使用AJAX请求报错 此请求已被阻止
C# 操作DOS添加端口防火墙名单
C# 中使用const 常量可能会出现的版本更新问题!
暂无相关内容...
基于WPF实现系统桌面录制gif+批量添加水印工具源码
基于Wpf+MVVM实现的完整截图软件的框选区域效果源码
visual studio 2019在线安装包和激活码密钥key
 远程控制软件Radmin3.4 中文完整版(控制端和被控端)
C#基于ffmpeg.exe实现视频添加字幕转GIF表情包的源码
免责声明 部分转载分享内容若侵犯您的权益,还请 邮件联系 侵删