net core 微信公众号发送模板消息完整实现

第一完整看一下微信官方的文档

链接:开发前必读 / 首页 (qq.com)

想要发送模板消息分为一下几步

第一步:想要发消息需要有这几个参数,

        openid,这是给谁发消息

        access_token,调用接口必要的

        appid、secret 这两个是生成access_token 的

ok,只要有这几个参数就意味着你就可以发模板消息了,但前提是你在微信公众号平台已经配置好了具体可以参考这篇文章:手把手教你微信公众号如何给指定用户发送消息提醒_微信公众号推送消息-CSDN博客

上面配置过程中需要注意的是,有一个txt文件

这个txt 文件要放到 服务器上,如果服务器找不到这个文件的话例如我这是一个API站,那就要在Program.cs 文件中配置一下

var app = builder.Build();


app.UseStaticFiles();

这样才能找到txt文件。

第一步代码如下

	public string SendRemindMsg(string open_id, string msg_title, string redirect_url)
	{
		try
		{

		
		string access_token = GetAccessToken();
		string msgid = "";
		bool IsSuccess = false;
		string poster = "{\"touser\": \"" + open_id + "\",\"template_id\":\"这里是你的模板id\", "
            + "\"url\":\"" + redirect_url + "\","
			+ "\"data\":{\"first\":{\"value\":\"" + msg_title + "\",\"color\":\"#ff0000\"},"
			+ "\"thing2\":{\"value\":\"测试\",\"color\":\"#ff0000\"},"
			+ "\"number3\":{\"value\":\"1\",\"color\":\"#ff0000\"},"
			+ "\"thing4\":{\"value\":\"测试\",\"color\":\"#ff0000\"},"
			+ "\"time5\":{\"value\":\"" + DateTime.Now.ToString("yyyy年MM月dd日 HH:mm:ss") + "\",\"color\":\"#ff0000\"},"
			+ "\"remark\":{\"value\":\"点击这里查看详情。\",\"color\":\"#0000ff\"}"
			+ " } }";
		string resultStr = GetPage("https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=" + access_token, poster);
		dynamic result = JsonConvert.DeserializeObject(resultStr);

			return resultStr;

		}
		catch (Exception e)
		{

			return e.Message;
		}
	}

这就是发送逻辑,需要注意的是poster 中的内容

data中的 thing2、number3、thing4、time5 这些参数是根据平台上配置的模板参数来的

例如 我申请的模板是这样的

详细内容中的参数名就是 上面代码中poster -data 中的参数名

SendRemindMsg() 方法中 用到的基础方法代码如下 GetAccessToken() :

public string GetAccessToken()
{
	var tokenRecord =  _goodtooth.WeChatToken.FirstOrDefault();

	if (tokenRecord != null && tokenRecord.Expiration > DateTime.UtcNow)
	{
		return tokenRecord.AccessToken; // 返回有效的 Token
	}

	return GetAccessToken_base
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值