项目介绍
SKIT.FlurlHttpClient.Wechat可能是全网最完整的 C# 版微信 SDK,封装全部已知的微信 API,包含微信公众平台(订阅号+服务号+小程序+小游戏+小商店+视频号)、微信开放平台、微信商户平台(微信支付+微企付)、企业微信、微信广告平台、微信智能对话开放平台等模块,可跨平台。
项目特性
-
基于: Flurl.Http
-
支持平台: .NET Framework 4.6.2+、.NET Standard 2.0+、.NET Core 2.0+、.NET 5.0+
-
跨平台部署: 支持 Windows / Linux / macOS
-
序列化方式: 支持 System.Text.Json(默认)和 Newtonsoft.Json
-
特点:
-
强类型接口模型
-
全异步式编程
-
提供 SourceLink 调试符号文件
-
功能模块
❝该项目目前已包含公众平台、开放平台、商户平台、企业微信、广告平台、对话开放平台等模块。
微信支付 v3 版接入示例代码
NuGet 安装
> Install-Package SKIT.FlurlHttpClient.Wechat.TenpayV3
初始化
using SKIT.FlurlHttpClient.Wechat.TenpayV3;
using SKIT.FlurlHttpClient.Wechat.TenpayV3.Settings;
var manager = new InMemoryCertificateManager();
var options = new WechatTenpayClientOptions()
{
MerchantId = "微信商户号",
MerchantV3Secret = "微信商户 v3 API 密钥",
MerchantCertificateSerialNumber = "微信商户证书序列号",
MerchantCertificatePrivateKey = System.IO.File.ReadAllText("/微信商户证书私钥文件路径/apiclient_key.pem"),
PlatformCertificateManager = manager // 平台证书管理器的具体用法请参阅下文的基础用法与加密、验签有关的章节
};
var client = WechatTenpayClientBuilder.Create(options).Build();
请求 & 响应
using SKIT.FlurlHttpClient.Wechat.TenpayV3;
using SKIT.FlurlHttpClient.Wechat.TenpayV3.Models;
/* 以 JSAPI 统一下单接口为例 */
var request = new CreatePayTransactionJsapiRequest()
{
OutTradeNumber = "商户订单号",
AppId = "微信 AppId",
Description = "订单描述",
ExpireTime = DateTimeOffset.Now.AddMinutes(15),
NotifyUrl = "https://example.com",
Amount = new CreatePayTransactionJsapiRequest.Types.Amount()
{
Total = 1
},
Payer = new CreatePayTransactionJsapiRequest.Types.Payer()
{
OpenId = "微信 OpenId"
}
};
var response = await client.ExecuteCreatePayTransactionJsapiAsync(request);
if (response.IsSuccessful())
{
Console.WriteLine("PrepayId:" + response.PrepayId);
}
else
{
Console.WriteLine("错误代码:" + response.ErrorCode);
Console.WriteLine("错误描述:" + response.ErrorMessage);
}
项目地址
https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.Wechat
标签:版微信,FlurlHttpClient,商户,C#,微信,SKIT,Wechat,new,SDK From: https://blog.csdn.net/qq_37237487/article/details/144016436