【5000 Stars 福利】微信接口动态 WebApi 使用说明
前言

作为中国 C# 开源项目中 Watch/Star/Fork 最高的项目之一,Senparc.Weixin SDK 凝聚了盛派微信团队持续7年的付出,和大量开发者的无私贡献,以及数万开发者的使用与反馈。为了纪念 Senparc.Weixin SDK 项目突破 5000 Stars 这个小小的里程碑,盛派微信团队为大家准备了一份特殊福利:微信接口动态 WebApi 系统(以下简称“系统”),在此系统中,您可以使用 WebApi 调用 Senparc.Weixin SDK 已经集成的微信高级接口,用于各项接口测试,或完成紧急情况下的微信功能操作。
订阅APP
为了确保安全性,此系统已经集成到 NeuChar 系统中作为 APP 进行订阅,然后进行自动授权访问,因此您需要首先打开 NeuChar 首页:https://www.neuchar.com,点击右上方【登录 NeuChar 管理中心】:

网页会跳转到 https://weixin.senparc.com 域名下进行统一登录,如果您已经注册过,可以使用微信扫描二维码登陆,如果没有,请进行注册,并在注册成功后,再次登陆 https://www.neuchar.com:

登陆成功后,进入 NeuChar 后台:

如果您是新注册用户,此时如果您点击左侧
,会看到系统已经为您添加了一个微信管理账号(也叫【NeuChar Cell 账号】),有了至少一个 NeuChar Cell,就可以进入下一步开始订阅 App。
您可以用它进行微信菜单设置等操作,希望一进步了解的朋友可以阅读《NeuChar 平台使用及开发教程 索引》,其他功能和本文无关。
点击左侧菜单
按钮,出现【应用商店】中的 APP 列表:

在【应用商店】中选择【微信 API Swagger 文档】应用:

选择需要订阅的【NeuChar Cell 账号】,点击【立即订阅】:

因为目前此 APP 限免,您不需要支付任何费用,点击【确定按钮】,完成订阅(您也可以选择多个月的订阅时间):

您会看到一个授权通知界面:

系统会为您自动跳到应用首页:

可以看到,这个站点使用了 SCF 作为模板,今后我们将以 SCF 为模板为大家献上开源的 NeuChar App Sample,大家可以在此 Sample 基础上开发类似的 NeuChar App。
本系统所使用的动态 API 核心也将在未来集成到 SCF ,开源给大家。
使用 Swagger 微信 API
点击顶部【API 文档】按钮,稍等片刻,即可看到完整的已被 Senparc.Weixin SDK 集成的接口文档,并且已经自动按照接口分类进行了分组,点击任意一个分组标签,就可以展开下面所有的接口:

为了能够使用高级接口,我们首先需要调用【CommonApi】下的 【GetToken】,以获取 AccessToken:

点击
按钮,自动出现接口参数:

注意:如果您使用的是测试号(https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfo&t=sandbox/index),不需要进行任何设置,如果您使用的是正式的公众号,需要在微信后台添加IP白名单:121.201.3.83。
点击【Execute】按钮,即可看到微信结果:

上图红框中已经获取到 access_token,将后面字符串中的值复制出来,以备后用。
注意:如果没有完成之前从 NeuChar 的授权登录过程,系统将拒绝服务,返回错误信息:

有了 AccessToken,我们就可以用其调用任意接口,当然,如果 AccessToken 错误,则可能返回 500 错误消息。
例如我们使用Url转短连接的接口:

可以看到接口访问成功,把 https://www.neuchar.com 转成了 https://w.url.cn/s/A8qKZEi,大家也可以测试一下。
除了单个 AccessToken 的接口,我们还可以调用多参数的接口,例如尝试一下客服接口:

如上图输入 AccessToken 以及本人的 OpenId,和想要发送的客服消息,微信客户端立即响应到了这条请求。
可能您也已经发现,Swagger 页面的右上角,有一个下拉菜单,其中提供了微信公众号、小程序、开放平台、企业号的接口筛选,且每个选项右侧标有当前系统所使用的微信模块的版本号,方便大家使用!

PS:由于安全问题,微信支付暂时未集成到系统中。
特别说明:在所有参数正确的情况下(包括 AccessToken),调用接口如果出现 500 错误,应当首先排除是否为 48001 错误,也就是没有此接口的权限,如果您确定权限无误,可以加群让管理员为您排查错误。NeuChar 和 SCF 分别有专用QQ群可以加,也欢迎进群交流相关技术:
- NeuChar 技术交流群:618605800

- SCF 技术交流群:147054579

【5000 Stars 福利】微信接口动态 WebApi 使用说明的更多相关文章
- 动态 WebApi 引擎使用教程(3行代码完成动态 WebApi 构建)
目录 什么是 WebApiEngine? 开源地址 使用方法 使用 [ApiBind] 标签让任何方法变成 WebApi 对 API 进行分类 自定义 API 名称 复制特性 为整个类配置 WebAp ...
- ABP项目中使用Swagger生成动态WebAPI
本文是根据角落的白板报的<使用ABP实现SwaggerUI,生成动态webapi>一文的学习总结,感谢原文作者角落的白板报. 1 安装Swashbuckle.core 1.1 选择WebA ...
- ABP源码分析三十五:ABP中动态WebAPI原理解析
动态WebAPI应该算是ABP中最Magic的功能之一了吧.开发人员无须定义继承自ApiController的类,只须重用Application Service中的类就可以对外提供WebAPI的功能, ...
- C#开发微信门户及应用(42)--使用Autofac实现微信接口处理的控制反转处理
在很多情况下,我们利用IOC控制反转可以很方便实现一些接口的适配处理,可以在需要的时候切换不同的接口实现,使用这种方式在调用的时候,只需要知道相应的接口接口,具体调用哪个实现类,可以在配置文件中动态指 ...
- ABP之动态WebAPI(一)
ABP的动态WebApi实现了直接对服务层的调用(其实病没有跨过ApiController,只是将ApiController公共化,对于这一点的处理类似于MVC,对服务端的 调用没有跨过HttpHan ...
- java微信接口之五—消息分组群发
一.微信消息分组群发接口简介 1.请求:该请求是使用post提交地址为: https://api.weixin.qq.com/cgi-bin/message/mass/sendall?access_t ...
- java微信接口之四—上传素材
一.微信上传素材接口简介 1.请求:该请求是使用post提交地址为: https://api.weixin.qq.com/cgi-bin/media/uploadnews?access_token=A ...
- java微信接口之三—上传多媒体文件
一.微信上传多媒体接口简介 1.请求:该请求是使用post提交from来实现的,我们可以在网页上进行表单提交来实现.地址为: http://file.api.weixin.qq.com/cgi-bin ...
- ABP中动态WebAPI原理解析
ABP中动态WebAPI原理解析 动态WebAPI应该算是ABP中最Magic的功能之一了吧.开发人员无须定义继承自ApiController的类,只须重用Application Service中的类 ...
随机推荐
- 【BZOJ4001】【Luogu P3978】 [TJOI2015]概率论
题目描述: Description: Input 输入一个正整数N,代表有根树的结点数 Output 输出这棵树期望的叶子节点数.要求误差小于1e-9 Sample Input 1 Sample Ou ...
- Authentication 接口验证访问 (C#)
private HttpClient _httpClient = new HttpClient(); private string PostToOwner(CarOwnerCoupon postDat ...
- 《Windows内核安全与驱动开发》4.1 文件操作
<Windows内核安全与驱动开发>阅读笔记 -- 索引目录 <Windows内核安全与驱动开发>4.1 文件操作 从 C:\a.txt 中读取一部分内容并利用 DbgPrin ...
- 解密国内BAT等大厂前端技术体系-百度篇(长文建议收藏)
1 引言 整个业界在前端框架不断迭代中,也寻找到了许多突破方向,例如跨平台中的RN.Flutter,服务端GraphQL.Serverless,前端和客户端的融合越来越紧密,前端在Node和Elect ...
- mac 安装 XX-Net-3.12.11
目录 一 下载xx-net稳定版 二 使用Chrome浏览器 三 开启IPv6 mac禁用SIP机制 SIP 步骤 其他 附完整的csrutil命令 一 下载xx-net稳定版 github稳定版-X ...
- [TimLinux] django html如何实现固定表头
1. 需求 表格很长,这个时候就希望表格头部不动,而只是表格内容行支持滚动功能. 2. 方法 两张表:一张表(THeader)负责头部字段的显示,另一张表(TBody)负责内容行字段的显示. 两张表都 ...
- openlayers6结合geoserver实现地图属性查询(附源码下载)
前言 之前写过一篇 openlayers4 版本的地图属性查询文章,但是由于是封装一层 js 代码写的,很多初学者看起来比较有点吃力,所以本篇文章重新写一篇地图属性查询文章,直接基于最新版本 open ...
- ACM小组的古怪象棋
Description ACM小组的Samsara和Staginner对中国象棋特别感兴趣,尤其对马(可能是因为这个棋子的走法比较多吧)的使用进行深入研究.今天他们又在 构思一个古怪的棋局:假如Sam ...
- unordered_map / HashTable 的负载因子是什么意思
// in C++ 前段时间在看一些关于这个的文章时遇到了一些问题:unordered_map / HashTable 的负载因子是什么意思 经过度娘的搜索,最后得出: 若设 Hash 表的桶数量为 ...
- Mysql双活方案
#### 说明 Mysql主主互备即为两个mysql的互为备份机 ##### Windows下安装步骤(Linux下步骤类似,基本就是装上mysql,然后修改配置来完成主从的设置) - step1 ...