0

第三方平台的小程序添加订阅消息时报错200014

微信开发 · nilchan · 查看 3204 次 · 于 2年前

订阅消息小程序

Senparc.Weixin.Open.WxaAPIs.NewTmpl.NewTmplApi.AddTemplateAsync,参数均无误,调用的时候报异常:
Senparc.Weixin.Exceptions.ErrorJsonResultException: 微信 POST 请求发生错误!错误代码:200014,说明:missing parameter tid rid: 637262ec-3a99543a-78e4c4e0

但是使用微信的调试工具(https://developers.weixin.qq.com/apiExplorer)的小程序添加订阅消息接口,https://api.weixin.qq.com/wxaapi/newtmpl/addtemplate?access_token=ACCESS_TOKEN,是能成功的。

请问,这个方法是不是有哪里没用对?
您尚未登录,请:网站登录 or 微信登录
共收到 2 条回复
0

Senparc 2年前

非常感谢您的分享!

0

nilchan 2年前

摸索了一天,搞定了。

用微信的调试工具,是没问题的,能正确响应。
而用Senparc.Weixin.Open.WxaAPIs.NewTmpl.NewTmplApi.AddTemplateAsync接口,的确是报200014,tid参数不正确的错误。后来改成使用Senparc.Weixin.CommonAPIs.CommonJsonSend.SendAsync请求,data参数为包含tid、kidList、sceneDesc的自定义类对象,依然同样错误。
看来,报这个错误,并非真的是tid错误,而是因为参数传递的不正确,微信那边先判断了tid而已。那么,具体原因,要么是微信解析这个参数不正确,要么是……(想不到其它可能了)
那把data传递对象,换成了相应的json字符串,再试试,呃,错误依旧!

最后在微信社区找到了一些答案:把data改为tid=XXXX&kidList[0]=2&kidList[1]=3&kidList[2]=1&sceneDesc=test类似这样的字符串,作为formdata传输,content-type相应改为application/x-www-form-urlencoded,利用HttpClient直接post到对应接口,返回是成功的,可以添加了!
从这个参数来看,kidList由数组拆分元素提交,怪怪的。而且还要一个问题,就是重复请求会重复创建,并不会判断订阅消息已存在。(个人猜想,会不会是微信的旧接口,也没做过多判断,而且已经弃用?)

最后,尝试在这个post基础上,修改content-type为application/json,data使用json格式字符串(非对象),提交成功,可以正确响应,搞定,也可以判断订阅消息已存在!

这么看来,senparc的接口应该是通用的,但微信这个接口很可能有点特殊,或者是解析参数有特殊之处,所以通用的参数封装不适用?
最后还是要说,微信的文档,天知道哪里会有坑,真的是防不胜防。。。


热门话题 更多 >>

v3微信支付验签失败,v3各参数均已填写

macong 5 个回复 • 查看 947 次 • 54天前

微信支付验签报错

taowendi 2 个回复 • 查看 1386 次 • 34天前

Program.cs中启用UseSenparcWeixin报错

xxxx96923 2 个回复 • 查看 769 次 • 28天前

怎么在program中注册多个微信支付

好好好好 2 个回复 • 查看 768 次 • 74天前

微信支付 V3

wahcr 2 个回复 • 查看 952 次 • 158天前

商户付款到零钱接口调用问题

ztwz 1 个回复 • 查看 2019 次 • 123天前

微信支付 V3

wahcr 1 个回复 • 查看 1077 次 • 158天前

获取企业审批模板selector控件选项key错误

YYDS 1 个回复 • 查看 1040 次 • 62天前

Senparc.Weixin.MP不支持.net9吗

xxxx96923 1 个回复 • 查看 363 次 • 28天前

微信后台验证报下面的错误

laowu 1 个回复 • 查看 991 次 • 30天前

个人信息
QQ群
  • 1群:300313885 (2000人群 已满)
  • 2群(公众号):293958349 Senparc.Weixin.MPSDK 2群
  • 3群:342319110 (2000人群 已满)
  • 4群:372212092 (500人群 已满)
  • 5群:377815480 (1000人群 已满)
  • 6群:425898825 (1000人群 已满)
  • 7群:482942254 (500人群 已满)
  • 8群:106230270 (500人群 已满)
  • 9群:539061281 (500人群 已满)
  • 10群(分布式缓存):246860933 Senparc.Weixin.Cache SDK 10群
  • 11群:553198593 (500人群 已满)
  • 12群(小程序):108830388 (2000人群 已满)
  • 13群(开放平台):183424136 (500人群 已满)
  • 14群(视频学员):588231256 Senparc.Weixin SDK 14群
  • 15群(综合):289181996 (500人群 已满)
  • 16群(开放平台):860626938 (500人群 已满)
  • 17群(小程序):770615466 [17群 开放平台]SenparcSDK
  • NCF 技术交流群:147054579 SCF 开发交流群
微信开发宝典:《微信开发深度解析》

由 Senparc.Weixin SDK 作者耗时两年完成的微信开发图书《微信开发深度解析:公众号、小程序高效开发秘籍》已经出版!

历经2年精心雕琢,难得的“理论 + 实战案例 + 趟坑经验”总结,
从需求分析、策划,到账号申请、验证,再到全面的 API 及开发工具,
覆盖所有开发微信公众号(含订阅号、服务号和小程序)所需关键技能!

视频教程:《微信公众号+小程序快速开发》

由盛派课堂(盛派旗下独立教育品牌)制作,《微信开发深度解析》作者苏震巍先生主讲的《微信公众号+小程序快速开发》视频课程开课啦!

课程采用“理论+实战”的教学形式,结合部分《微信开发深度解析》内容,独立于书本,包含了更多的操作演示和案例展示,帮助大家从多个维度学习微信开发以及.NET开发过程中的诸多技巧。
课程包含两大部分:
1. 微信开发基础技能
2. 公众号及小程序案例实战
共计60课时,配有番外篇,目前视频已在网易云课堂上线。