一、消息推送配置

1、解析失败、请检查信息是否填写正确

  服务器地址中不能使用其他的端口号,把端口号去掉,默认就是走80或443端口,另外这个地址需要外网访问,我使用了nat123映射了80端口,这个工具需要一点点小费

2、请求超时,请检查信息是否填写正确
  这个一般是由于后端CheckSignature方法里 经过SHA1加密的字符tmpStr和signature不匹配导致的,一开始我使用 if( tmpStr==signature ) return true; 其实应该使用 if( tmpStr.Equals(signature, StringComparison.OrdinalIgnoreCase) ),SHA1加密以后返回的字符是大写的

3、Token校验失败,请检查确认
  这个一般是由于后端接口返回的数据类型不对,大多数接口都会封装一个ApiResutModel用来统一返回类似于 { code:200, msg:"",data:{} } 的结果,但是消息推送配置里只能接受纯文本,因此修改为 HttpContext.Response.WriteAsync(echostr);


二、消息推送

1、invalid openid rid: 5f5f0b66-3e0db526-555e7b82 无效的openid
  这个一般由于后端请求subscribeMessage.send接口时传递的json格式错误,要不就是key顺序问题,要不就是key首字符大写的问题,一般后端定义的请求模型首字母都是大写,而小程序接口需要的json必须全部小写

2、{ "errcode":43101,"errmsg":"user refuse to accept the msg hint: [EW7iIa04390500]" } 用户拒绝接受消息
  当前端使用wx.requestSubscribeMessage已经成功授权后还提示上面的错误,一般是由于后端配置的模板id和小程序的模板id不匹配导致的

3、{"errcode":47003,"errmsg":"argument invalid! data.date4.value invalid rid: 5f4084e5-7924012e-20ad3837"}
  如果消息模板中定义了date,那么日期是不能包含时间的,在C#中使用DateTime.Now.ToShortDateString()截取年月日

最新文章

  1. 用户点击确认登录,自动跳转下面地址得到code
  2. WPF ListBox
  3. 一个MVC架构的线程安全的银行转账案例(事务控制)
  4. 浅析Windows安全相关的一些概念
  5. Android开发:在EditText中关闭软键盘 转来的
  6. C#4.0 特性
  7. 【Fate/kaleid liner 魔法少女☆伊莉雅】系列中实践的、新世代的动画摄影工作流
  8. Unity3D ShaderLab 各向异性高光
  9. C++@类对象和类指针的区别(转)
  10. UrlRewriter.dll伪静态实现二级域名泛解析
  11. Java-WebSocket
  12. textarea高度自适应(转载)
  13. IDEA写scala简单操作
  14. python遍历文件
  15. Vue.js中集成summernote
  16. springcloud开篇
  17. SSM框架接收处理安卓端的json数据
  18. SpringBoot使用WebJars
  19. re.S、 re.M
  20. docker容器与镜像

热门文章

  1. Eclipse中构建maven项目的两种方式
  2. 解决 supervisor : 无法加载文件 C:\Users\charles\AppData\Roaming\npm\supervisor.ps1
  3. goalng包和命令工具
  4. WSGI 配置禁止反向DNS查找
  5. 第3篇 Scrum 冲刺博客(专✌️团队)
  6. 系综的实现方式(nve、nvt、npt)
  7. Jigsaw pre-training:摆脱ImageNet,拼图式主干网络预训练方法 | ECCV 2020
  8. C# OWC11
  9. 阿里云体验实验室 体验教程《Linux指令入门-系统管理》
  10. 如何让Web程序在点击按钮后出现如执行批处理程序般的效果