前言
对接和开发过微信相关API(如:微信公众号开发、微信小程序、微信支付)的同学都知道,微信提供了非常多的接口供开发者使用和对接。其实对接接口谁都知道没啥难度,但是看文档费劲且费时间。因此找到一款封装完善且全面的SDK这能够大大的简化我们的开发难度和提高工作效率,今天给大家推荐一款由C#开源的完整且全面的微信SDK:DotNetCore.SKIT.FlurlHttpClient.Wechat。
项目官方介绍
可能是全网最完整的 C# 版微信 SDK,封装全部已知的微信 API,包含微信公众平台(订阅号+服务号+小程序+小游戏+小商店+视频号)、微信开放平台、微信商户平台(微信支付+微企付)、企业微信、微信广告平台、微信智能对话开放平台等模块,可跨平台。
项目特性
- 基于 Flurl.Http,可与 IHttpClientFactory 集成。
- 支持 .NET Framework 4.6.1+、.NET Standard 2.0+、.NET Core 2.0+、.NET 5+。
- 支持 Windows / Linux / macOS 多平台部署。
- 支持 System.Text.Json(默认)和 Newtonsoft.Json 两种序列化方式。
- 强类型接口模型。
- 全异步式编程。
- 提供 SourceLink 调试符号文件。
- 完整、完善、完全的微信 HTTP API 封装。
项目模块
微信公众平台 & 微信开放平台示例
基于 Flurl.Http 的微信公众平台 & 微信开放平台 HTTP API SDK。
功能
- 基于微信公众平台 & 微信开放平台 API 封装。
- 提供了微信公众平台 & 微信开放平台所需的 AES、SHA-1、HMAC-SHA-256 等算法工具类。
- 提供了 JS-SDK 签名、解析回调通知事件等扩展方法。
快速入门
安装:
提示:如果你使用 Visual Studio NuGet 管理器图形化界面,请在搜索结果中勾选“包括预发行版”。
# 通过 NuGet 安装 > Install-Package SKIT.FlurlHttpClient.Wechat.Api # 通过 dotnet-tools 安装 > dotnet add package SKIT.FlurlHttpClient.Wechat.Api
初始化:
using SKIT.FlurlHttpClient.Wechat; using SKIT.FlurlHttpClient.Wechat.Api; var options = new WechatApiClientOptions() { AppId = "微信 AppId", AppSecret = "微信 AppSecret", ImmeDeliveryAppKey = "即时配送相关服务 AppKey,不用则不填", ImmeDeliveryAppSecret = "即时配送相关服务 AppSecret,不用则不填", MidasOfferId = "米大师(虚拟支付 1.0)相关服务 OfferId,不用则不填", MidasOfferIdV2 = "米大师(虚拟支付 2.0)相关服务 OfferId,不用则不填", MidasAppKey = "米大师(虚拟支付 1.0)相关服务 AppKey,不用则不填", MidasAppKeyV2 = "米大师(虚拟支付 2.0)相关服务 AppKey,不用则不填" }; var client = new WechatApiClient(options);
请求 & 响应:
using SKIT.FlurlHttpClient.Wechat.Api; using SKIT.FlurlHttpClient.Wechat.Api.Models; /* 以公众号获取用户信息接口为例 */ var request = new CgibinUserInfoRequest() { AccessToken = "微信 AccessToken", OpenId = "微信 OpenId" }; var response = await client.ExecuteCgibinUserInfoAsync(request); if (response.IsSuccessful()) { Console.WriteLine("昵称:" + response.Nickname); Console.WriteLine("头像:" + response.HeadImageUrl); } else { Console.WriteLine("错误代码:" + response.ErrorCode); Console.WriteLine("错误描述:" + response.ErrorMessage); }
项目源码
更多功能欢迎前往开源地址查看👀
https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.Wechat
优秀项目和框架精选
该项目已收录到C#/.NET/.NET Core优秀项目和框架精选中,关注优秀项目和框架精选能让你及时了解C#、.NET和.NET Core领域的最新动态和最佳实践,提高开发效率和质量。坑已挖,欢迎大家踊跃提交PR,自荐(让优秀的项目和框架不被埋没🤞
)。
https://github.com/YSGStudyHards/DotNetGuide/blob/main/docs/DotNet/DotNetProjectPicks.md