C# 微信消息模板 发送
项目要用到微信提醒 ,加上调转到小程序页面,或者 指定url
用到 RestSharp、Senparc.Weixin 类库
一开始直接照着微信示例直接post进去 发现一直提示 47001 ,估计是我姿势水平不太够,还是用个类库操作吧
using RestSharp;
using Senparc.Weixin.MP.AdvancedAPIs.TemplateMessage;
using System; namespace TemplateApp1
{
class Program
{
public static string OpenId = "";
public static string Template_id = "";
public static string AccessToken = GetACCESS_TOKEN();
static void Main(string[] args)
{
//网页跳转
SendTemplateMessageResult T = SendTemplateURL(AccessToken, OpenId, Template_id);
//小程序跳转
SendTemplateMessageResult T1 = SendTemplatMiniProgram(AccessToken, OpenId, Template_id);
Console.WriteLine(T+"\n"+T1);
Console.ReadKey();
}
/// <summary>
/// 网页跳转
/// </summary>
/// <param name="openId"></param>
/// <param name="template_id"></param>
/// <returns></returns>
public static SendTemplateMessageResult SendTemplateURL(string accessToken, string openId,string template_id)
{
var data = new
{
first = new TemplateDataItem("网页跳转"),
keyword1 = new TemplateDataItem("keyword1"),
keyword2 = new TemplateDataItem(DateTime.Now.ToString("yyyy年MM月dd日 HH:mm")),
remark = new TemplateDataItem("remark"),
};
string url = "https://baidu.com";
return Senparc.Weixin.MP.AdvancedAPIs.TemplateApi.SendTemplateMessage(accessToken, openId, template_id, url, data,null);
}
/// <summary>
/// 小程序跳转
/// </summary>
/// <param name="openId"></param>
/// <param name="template_id"></param>
/// <returns></returns>
public static SendTemplateMessageResult SendTemplatMiniProgram(string accessToken,string openId, string template_id)
{
var data = new
{
first = new TemplateDataItem("小程序跳转"),
keyword1 = new TemplateDataItem("keyword1"),
keyword2 = new TemplateDataItem(DateTime.Now.ToString("yyyy年MM月dd日 HH:mm")),
remark = new TemplateDataItem("remark"),
};
// 小程序
TempleteModel_MiniProgram miniProgram = new TempleteModel_MiniProgram
{
appid = "",
pagepath = ""
};
string url = string.Empty;
return Senparc.Weixin.MP.AdvancedAPIs.TemplateApi.SendTemplateMessage(accessToken, openId, template_id, url, data, miniProgram);
}
/// <summary>
/// 获取 AccessToken 需保存 有次数限制
/// </summary>
/// <returns></returns>
public static string GetACCESS_TOKEN()
{
string url = "";
var request = new RestRequest("", Method.GET);
RestClient restClient = new RestClient(url);
return restClient.Execute(request).Content;
}
}
}
C# 微信消息模板 发送的更多相关文章
- .NET之微信消息模板推送
最近在项目中使用到了微信消息模板推送的功能,也就是将对应的消息推送到对应的用户微信上去,前提是你必须要有一个微信公众号并且是付费了的才会有这个功能,还有就是要推送的用户必须是的关注了你的微信公众号的. ...
- .net推送微信消息模板
1.获取access_token public string GetAccess_Token() { string appid = WxPayConfig.APPID; string appsecre ...
- php之微信公众号发送模板消息
讲一下开发项目中微信公众号发送模板消息的实现过程(我用的还是Thinkphp5.0). 先看一下效果,如图: 就是类似于这样的,下面讲一下实现过程: 第一步:微信公众号申请模板消息权限: 立即申请: ...
- 微信公众号发送消息模板(java)
这段时间接触公众号开发,写下向用户发送消息模板的接口调用 先上接口代码 public static JSONObject sendModelMessage(ServletContext context ...
- 原创:【微信小程序】发送消息模板教程(后台以PHP示例)
1.本教程对外开放,未经博主同意,禁止转载. 2.准备材料:1)公众号|小程序,添加选择的模板消息,2)在设置>开发设置页面,开通消息模板功能:如: 3.因为调用微信发送模板的接口是:https ...
- h5 录音 自动生成proto Js语句 UglifyJS-- 对你的js做了什么 【原码笔记】-- protobuf.js 与 Long.js 【微信开发】-- 发送模板消息 能编程与会编程 vue2入坑随记(二) -- 自定义动态组件 微信上传图片
得益于前辈的分享,做了一个h5录音的demo.效果图如下: 点击开始录音会先弹出确认框: 首次确认允许后,再次录音不需要再确认,但如果用户点击禁止,则无法录音: 点击发送 将录音内容发送到对话框中.点 ...
- 微信小程序发送模板消息
微信小程序发送模板消息 标签(空格分隔): php 看小程序文档 [模板消息文档总览]:https://developers.weixin.qq.com/miniprogram/dev/framewo ...
- 微信小程序 发送模板消息的功能实现
背景 - 小程序开发的过程中,绝大多数会满足微信支付 - 那么,作为友好交互的体现,自然就会考虑到支付后的消息通知咯 - 所以,我的小程序项目也要求完成这个效果,so.分享一下自己的实现步骤,以方便道 ...
- 微信小程序-发送模板消息
1 添加一个小程序的消息模板,获取到模板id,存储到数据库中,方便以后修改调用 2. https://developers.weixin.qq.com/miniprogram/dev/api-back ...
随机推荐
- Eclipse 的快捷键以及文档注释、多行注释的快捷键 一、多行注释快捷键
一.多行注释快捷键 1.选中你要加注释的区域,用ctrl+shift+C 或者ctrl+/ 会加上//注释2.先把你要注释的东西选中,用shit+ctrl+/ 会加上/* */注释 3.以上快捷 ...
- SynchronizedStack -- tomcat8同步栈
同步栈(安全栈): org.apache.tomcat.util.collections.SynchronizedStack通过stack栈锁来控制栈中获取的类T.通过push.pop和clear方法 ...
- 【PHP】图片转换为base64,经过post传输后‘+’会变成 ‘空格’
图片转换为base64,经过post传输后‘+’会变成 ‘空格’, 需要用PHP 处理一下 $str= $_POST['img_data']; $str= str_replace(' ','+',$s ...
- Android webview 写入cookie的解决方法以及一些属性设置
原文地址:https://www.2cto.com/kf/201703/616868.html Android webview 写入cookie的解决方法以及一些属性设置,webview怎么设置写入C ...
- 如何做ui自动化---步骤详解
第一步: 得到功能测试的常规用例,查看是否可以进行自动化,要明确,自动化不是为了自动化而自动化,自动化是节省人力,主要做回归测试,如果变动性特别大,不建议做自动化,具体可查看其它文章“什么适合做自动化 ...
- 编译安装hls协议切片工具 m3u8-segmenter
操作系统:Ubuntu16.04.4 amd64 安装http://m3u8-segmenter.inodes.org/方式安装m3u8-segmenter报错,于是有了这篇文章 apt instal ...
- Python - Django - ORM QuerySet 方法补充
models.py: from django.db import models class Employee2(models.Model): name = models.CharField(max_l ...
- SERVER_ADDR
$_SERVER["SERVER_ADDR"] 当前运行脚本的服务器的ip地址
- UITableView实现行纵向颜色渐变
实现效果如下: 其实实现很简单,开始觉得使用颜色值和tableView的indexPath.row挂钩使用即可 或者使用CAGradientLayer实现渐变 最后使用alpha实现即可.需要注意的是 ...
- js实现深度优先遍历和广度优先遍历
深度优先遍历和广度优先遍历 什么是深度优先和广度优先 其实简单来说 深度优先就是自上而下的遍历搜索 广度优先则是逐层遍历, 如下图所示 1.深度优先 2.广度优先 两者的区别 对于算法来说 无非就是时 ...