docs: 完善文档

This commit is contained in:
Fu Diwei
2021-11-29 12:14:42 +08:00
parent d95b1026a1
commit 705bbf0d2a
5 changed files with 29 additions and 18 deletions

View File

@@ -6,4 +6,13 @@
>
> [《微信支付开发者文档 - 证书/密钥/签名介绍:私钥和证书 - 声明所使用的证书》](https://pay.weixin.qq.com/wiki/doc/apiv3/wechatpay/wechatpay3_1.shtml#part-3)
>
> [《微信支付开发者文档 - 常见问题:证书相关 - 如何查看证书序列号?》](https://pay.weixin.qq.com/wiki/doc/apiv3_partner/wechatpay/wechatpay7_0.shtml#part-5)
> [《微信支付开发者文档 - 常见问题:证书相关 - 如何查看证书序列号?》](https://pay.weixin.qq.com/wiki/doc/apiv3_partner/wechatpay/wechatpay7_0.shtml#part-5)
请开发者按上面参考阅读给出的方法自行查看证书序列号。
如果你已有 CER/CRT 格式的证书文件,你也可以利用本库提供的提供的 `RSAUtility` 工具类导出证书序列号:
```csharp
string certificate = "CRT/CER 证书内容";
string serialNumber = RSAUtility.ExportSerialNumber(certificate);
```

View File

@@ -97,7 +97,7 @@ var client = new WechatTenpayClient(options);
```csharp
var manager = new InMemoryCertificateManager(); // 为便于后续使用,该对象可使用全局单例的方式声明
var options = new WechatTenpayClientOptions() { CertificateManager = certManager };
var options = new WechatTenpayClientOptions() { CertificateManager = manager };
var client = new WechatTenpayClient(options);
```
@@ -109,7 +109,7 @@ var client = new WechatTenpayClient(options);
/* 注意QueryCertificatesAsync() 接口返回值需解密后再存入 */
/*    存入的证书式请参考上一小节给出的 CRT/CER 证书文件示例 */
/*    示例项目中也包含一段关于此的演示程序 */
certManager.SetEntry(new CertificateEntry("CRT/CER 证书序列号", "CRT/CER 证书内容", "证书生效时间", "证书过期时间"));
manager.SetEntry(new CertificateEntry("CRT/CER 证书序列号", "CRT/CER 证书内容", "证书生效时间", "证书过期时间"));
```
当然,现在的平台证书离过期还有很久,你也可以选择“偷懒”:提前下载好平台证书,在程序启动时记录一次即可。

View File

@@ -39,14 +39,14 @@ using SKIT.FlurlHttpClient.Wechat;
using SKIT.FlurlHttpClient.Wechat.TenpayV3;
using SKIT.FlurlHttpClient.Wechat.TenpayV3.Settings;
var certManager = new InMemoryCertificateManager();
var manager = new InMemoryCertificateManager();
var options = new WechatTenpayClientOptions()
{
MerchantId = "微信商户号",
MerchantV3Secret = "微信商户 v3 API 密钥",
MerchantCertSerialNumber = "微信商户证书序列号",
MerchantCertPrivateKey = "-----BEGIN PRIVATE KEY-----微信商户证书私钥-----END PRIVATE KEY-----",
CertificateManager = certManager // 证书管理器的具体用法请参阅下文的高级技巧
CertificateManager = manager // 证书管理器的具体用法请参阅下文的高级技巧
};
var client = new WechatTenpayClient(options);
```
@@ -100,16 +100,16 @@ else
- [如何使用拦截器?](./Advanced_Interceptor.md)
- [如何验证响应签名?](./Advanced_ResponseSignatureVerification.md)
- [如何加密请求中的敏感数据?](./Advanced_RequestSensitiveDataEncryption.md)
- [如何解密响应中的敏感数据?](./Advanced_ResponseSensitiveDataDecryption.md)
- [如何验证回调通知事件签名?](./Advanced_EventSignatureVerification.md)
- [如何验证响应签名?](./Advanced_ResponseSignatureVerification.md)
- [如何解密回调通知事件中的敏感数据?](./Advanced_EventResourceDecryption.md)
- [如何验证回调通知事件签名?](./Advanced_EventSignatureVerification.md)
- [如何生成客户端调起支付时所需的参数及签名?](./Advanced_Payment.md)
- [如何扩展额外的 API](./Advanced_Extensions.md)