惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google DeepMind News
Google DeepMind News
L
LangChain Blog
H
Help Net Security
博客园_首页
T
Tailwind CSS Blog
Microsoft Security Blog
Microsoft Security Blog
T
The Blog of Author Tim Ferriss
雷峰网
雷峰网
Recent Announcements
Recent Announcements
D
DataBreaches.Net
U
Unit 42
Vercel News
Vercel News
I
InfoQ
Martin Fowler
Martin Fowler
Microsoft Azure Blog
Microsoft Azure Blog
Apple Machine Learning Research
Apple Machine Learning Research
S
SegmentFault 最新的问题
Jina AI
Jina AI
博客园 - 叶小钗
博客园 - 【当耐特】
罗磊的独立博客
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
月光博客
月光博客
Last Week in AI
Last Week in AI

博客园 - 牛腩

鸿蒙开发DevEco Studio创建hello world项目 SQL Server数据库中用存储过程来取顺序号 cmd命令行下用命令执行SQL脚本到SQL Server数据库中 Blazor项目中建立WebApi ASP.NET CORE微信支付回调示例代码 nuget离线安装 高德地图API使用(根据地址查经纬度,计算二个坐标之间的距离) ModernWMS - 仓库管理系统简记 .NET开源商城CoreShop简记 windows服务器上用nginx转发到iis中的网站 uniapp中防抖函数debounce的使用 winform中的picturebox控件显示和保存byte[]图片 ASP.NET CORE kindeditor在线编辑器示例(上传多图和插入VIDEO标签) uni app uview新增商品页(无限级分类选择和多图上传) C#获取HTML源码 Ant for Blazor做单个表的增删查改 ASP.NET MVC中使用Autofac依赖注入 NET8下生成二维码 NET 7 中使用Session
NETCORE下用SKIT类库发送微信模板消息
牛腩 · 2024-08-28 · via 博客园 - 牛腩

NETCORE下用SKIT类库发送微信模板消息

        //测试发送模板消息-微信公众号
        //https://developers.weixin.qq.com/doc/offiaccount/Message_Management/Template_Message_Interface.html#5
        public async Task<IActionResult> Ceshi(int id, string openid) {
            try
            {
                var options = new WechatApiClientOptions()
                {
                    AppId = "********68",
                    AppSecret = "6b7b********9c5b93230c5d6b223d",
                };
                var client = new WechatApiClient(options);
                var aaa = await client.ExecuteCgibinTokenAsync(new SKIT.FlurlHttpClient.Wechat.Api.Models.CgibinTokenRequest());


                if (aaa.ErrorCode != 0)
                {
                    throw new Exception("取accesstoken出错:" + aaa.ErrorMessage);
                }

                Dictionary<string, SKIT.FlurlHttpClient.Wechat.Api.Models.CgibinMessageTemplateSendRequest.Types.DataItem> dic = new Dictionary<string, SKIT.FlurlHttpClient.Wechat.Api.Models.CgibinMessageTemplateSendRequest.Types.DataItem>();
                dic.Add("first", new SKIT.FlurlHttpClient.Wechat.Api.Models.CgibinMessageTemplateSendRequest.Types.DataItem() { 
                 Value = "您已报名成功"
                });
                dic.Add("keyword1", new SKIT.FlurlHttpClient.Wechat.Api.Models.CgibinMessageTemplateSendRequest.Types.DataItem()
                {
                    Value = "2024年08月12日"
                });
                dic.Add("keyword2", new SKIT.FlurlHttpClient.Wechat.Api.Models.CgibinMessageTemplateSendRequest.Types.DataItem()
                {
                    Value = "测试项目名称"
                });
                dic.Add("keyword3", new SKIT.FlurlHttpClient.Wechat.Api.Models.CgibinMessageTemplateSendRequest.Types.DataItem()
                {
                    Value = "员工牛腩"
                });
                dic.Add("keyword4", new SKIT.FlurlHttpClient.Wechat.Api.Models.CgibinMessageTemplateSendRequest.Types.DataItem()
                {
                    Value = "南宁大塘天城店"
                });
                dic.Add("keyword5", new SKIT.FlurlHttpClient.Wechat.Api.Models.CgibinMessageTemplateSendRequest.Types.DataItem()
                {
                    Value = "其他信息呀呀呀"
                });
                dic.Add("remark", new SKIT.FlurlHttpClient.Wechat.Api.Models.CgibinMessageTemplateSendRequest.Types.DataItem()
                {
                    Value = "有问题打电话:13888888888"
                });
              var bbb = await  client.ExecuteCgibinMessageTemplateSendAsync(new SKIT.FlurlHttpClient.Wechat.Api.Models.CgibinMessageTemplateSendRequest()
                {
                    AccessToken = aaa.AccessToken,
                    TemplateId = "He**********VNU",
                    ToUserOpenId = openid,
                    Data = dic,
                });
                if (bbb.ErrorCode != 0)
                {
                    throw new Exception(  bbb.ErrorMessage);
                }

                return Json(new { code = 0, msg = "成功发送模板消息:" + bbb.ErrorMessage});
            }
            catch (Exception ex)
            {
                return Json(new { code=-1,msg="测试发送模板消息出错:"+ ex.Message});
            }
        }