JeffreySu / WeiXinMPSDK

微信全平台 .NET SDK, Senparc.Weixin for C#,支持 .NET Framework 及 .NET Core、.NET 8.0。已支持微信公众号、小程序、小游戏、微信支付、企业微信/企业号、开放平台、JSSDK、微信周边等全平台。 WeChat SDK for C#.

Home Page:https://weixin.senparc.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

微信公众号自定义菜单查询接口返回值与SDK定义的模型不一致

funvh opened this issue · comments

commented

此版块专为反馈 bug 及提交需求服务,不负责解答开发问题,请勿发表开发问题,
如果您需要这方面的帮助,请移步问答社区https://weixin.senparc.com/QA

问题描述

微信公众号自定义菜单查询接口返回值与SDK定义的模型不一致,导致JSON反序列化时失败。
模型类:SelfMenuConfigResult

重现问题步骤(如果可以)
  1. ...
  2. ...
微信官方文档 URL

https://developers.weixin.qq.com/doc/offiaccount/Custom_Menus/Querying_Custom_Menus.html

微信官方文档快照(直接复制关键内容到下方)
发现问题的模块
  • Senparc.Weixin 版本:
  • [x ] Senparc.Weixin.MP 版本:v16.18.7
  • Senparc.Weixin.MP.MVC 版本:
  • Senparc.Weixin.Open 版本:
    - [ ] Senparc.Weixin.QY 版本:
  • Senparc.Weixin.Work 版本:
  • Senparc.Weixin.WxOpen 版本:
  • Senparc.Weixin.Cache.Redis 版本:
  • Senparc.Weixin.Cache.Memcached 版本:
  • Senparc.Weixin.Tenpay 版本:
  • Senparc.WebSocket 版本:
  • 其他模块:
模块对应的 .net 版本
  • .net 3.5
  • .net 4.0
  • .net 4.5+
  • .net standard 2.0 / 2.1
  • .net core 1.x
  • .net core 2.x
  • .net core 3.x
  • .net 6.x
开发环境
  • Visual Studio 2019
  • Visual Studio 2022
  • Visual Studio Code
  • 其他:
缓存环境
  • 服务器内存缓存(默认)
  • Redis 版本:
  • Memcached 版本:
  • 其他:
系统环境
  • Windows,版本:
  • Linux,版本:
  • Mac,版本:
  • 其他:
联系方式

Email:funv_h@163.com

(也可将问题地址及联系方式发送到 www.jeffrey.su@gmail.com)

发布问题后,请保持对 issue 的关注,有时会有需要进一步沟通的信息,很长时间内没有得到答复的 issue 将被关闭。

@funvh 您好,您方便提供一下,通过自定义菜单查询接口,返回得到的json么?我们想用您的菜单,做为测试用例,您如果有敏感信息请帮忙改成xxx就好,谢谢

@funvh 这是我们拿到的json,请您看看和您的一样么
5aa4397a62aac2c5923bffead0c3fda

commented

@funvh 这是我们拿到的json,请您看看和您的一样么 5aa4397a62aac2c5923bffead0c3fda

是这个接口:get_current_selfmenu_info

image

@funvh 您看一下,这块儿,您帮忙指以下哪里有问题呢。或者是您方便留一个联系方式,我们再交流么

commented

Snipaste_2023-04-12_11-10-08

commented

Snipaste_2023-04-12_11-15-05
这里的子对象不能和menu/get接口一样用同一个模型类,得拆分开来。

commented

Snipaste_2023-04-12_11-20-49
我是用的这个api,您看一下这个api的返回值模型类和微信官方文档的返回值是不是不一致

好的 我们了解了,我试一试~

Snipaste_2023-04-12_11-20-49 我是用的这个api,您看一下这个api的返回值模型类和微信官方文档的返回值是不是不一致

@funvh #2814 您看看我这边调整了模型的封装

commented

是这样子的发自我的 iPhone在 2023年4月12日,13:24,ConanYao @.> 写道: @funvh 您调试的时候是报的这样子的异常么 —Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.>

您看 #2814 这次PR看一下新的模型~ 确认一下

@funvh 您升级到苏总最新发布的v16.18.10.7版本了么,您有再次试过,问题解决了么?请帮忙反馈一下该issue,谢谢

commented
commented

@funvh 好的,看起来苏总还没更新至nuget~ 您再稍等一两天哈~
image

@funvh 新版本正在一起发布,抱歉之前的应该是 Nuget Key过期没有自动发布成功。

@funvh 您好,最近您这边有验证这个问题,解决了吗~ 我们这边nuget应该更新好了~

@JaneConan 这里提到的是get_current_selfmenu_info接口,而修复的时候(https://github.com/JeffreySu/WeiXinMPSDK/pull/2814)把 menu/get 接口的实体改掉了。导致 menu/get 接口不好用。

get_current_selfmenu_info接口文档:
https://developers.weixin.qq.com/doc/offiaccount/Custom_Menus/Querying_Custom_Menus.html

menu/get接口文档:
https://developers.weixin.qq.com/doc/offiaccount/Custom_Menus/Getting_Custom_Menu_Configurations.html

请核实。

@JaneConan 这里提到的是get_current_selfmenu_info接口,而修复的时候(https://github.com/JeffreySu/WeiXinMPSDK/pull/2814)把%E6%8A%8A) menu/get 接口的实体改掉了。导致 menu/get 接口不好用。

get_current_selfmenu_info接口文档: https://developers.weixin.qq.com/doc/offiaccount/Custom_Menus/Querying_Custom_Menus.html

menu/get接口文档: https://developers.weixin.qq.com/doc/offiaccount/Custom_Menus/Getting_Custom_Menu_Configurations.html

请核实。

好的 感谢反馈,确实是异常部分多加了一个判空导致了异常,我们修复一下,请您再帮忙看看