mirror of
https://gitee.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.Wechat.git
synced 2025-07-17 10:41:58 +08:00
docs: 完善文档
This commit is contained in:
parent
25bffda684
commit
306304f567
@ -32,7 +32,7 @@ bool ret = client.VerifyEventSignature(
|
|||||||
);
|
);
|
||||||
```
|
```
|
||||||
|
|
||||||
需要注意的是,使用该扩展方法前需先下载好平台证书,并存入全局的 `CertificateManager`。有关 `CertificateManager` 的更多介绍,请参阅本文档[《高级技巧 - 如何加密请求中的敏感数据?》](./Advanced_RequestSensitiveDataEncryption.md)的有关章节。
|
需要注意的是,使用该扩展方法前需先下载好平台证书,并存入全局的 `CertificateManager`。有关 `CertificateManager` 的更多介绍,请阅读下方有关章节。
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -47,4 +47,10 @@ if (!ret)
|
|||||||
Console.WriteLine(error);
|
Console.WriteLine(error);
|
||||||
Console.WriteLine(error.InnerException);
|
Console.WriteLine(error.InnerException);
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 通过 `CertificateManager` 管理平台证书信息:
|
||||||
|
|
||||||
|
请参阅本文档[《高级技巧 - 如何加密请求中的敏感数据?》](./Advanced_RequestSensitiveDataEncryption.md)下的同名章节。
|
@ -104,7 +104,7 @@ var manager = new InMemoryCertificateManager(); // 为便于后续使用,该
|
|||||||
var options = new WechatTenpayClientOptions()
|
var options = new WechatTenpayClientOptions()
|
||||||
{
|
{
|
||||||
// 其他配置项略
|
// 其他配置项略
|
||||||
CertificateManager = manager
|
PlatformCertificateManager = manager
|
||||||
};
|
};
|
||||||
var client = new WechatTenpayClient(options);
|
var client = new WechatTenpayClient(options);
|
||||||
```
|
```
|
||||||
@ -122,14 +122,14 @@ manager.SetEntry(new CertificateEntry("CRT/CER 证书序列号", "CRT/CER 证书
|
|||||||
|
|
||||||
当然,现在的平台证书离过期还有很久,你也可以选择“偷懒”:提前下载好平台证书,在程序启动时记录一次即可。
|
当然,现在的平台证书离过期还有很久,你也可以选择“偷懒”:提前下载好平台证书,在程序启动时记录一次即可。
|
||||||
|
|
||||||
每个请求模型对象会包含一个名为 `WechatpayCertSerialNumber` 的公共字段,本库会根据该字段的值自动尝试在证书管理器中读取证书内容,并完成请求中敏感信息字段加密:
|
每个请求模型对象会包含一个名为 `WechatpayCertificateSerialNumber` 的公共字段,本库会根据该字段的值自动尝试在证书管理器中读取证书内容,并完成请求中敏感信息字段加密:
|
||||||
|
|
||||||
```csharp
|
```csharp
|
||||||
request.WechatpayCertSerialNumber = "平台证书序列号";
|
request.WechatpayCertificateSerialNumber = "平台证书序列号";
|
||||||
client.EncryptRequestSensitiveProperty(request);
|
client.EncryptRequestSensitiveProperty(request);
|
||||||
```
|
```
|
||||||
|
|
||||||
对于存在待加密敏感信息字段的请求模型对象而言,如果你不指定 `WechatpayCertSerialNumber` 字段的值,本库会自动从 `CertificateManager` 挑选一个离过期时间最远的证书。
|
对于存在待加密敏感信息字段的请求模型对象而言,如果你不指定 `WechatpayCertificateSerialNumber` 字段的值,本库会自动从 `CertificateManager` 挑选一个离过期时间最远的证书。
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
@ -54,7 +54,7 @@ bool ret = RSAUtility.VerifyWithSHA256(publicKey, data, sign);
|
|||||||
bool ret = client.VerifyResponseSignature(response);
|
bool ret = client.VerifyResponseSignature(response);
|
||||||
```
|
```
|
||||||
|
|
||||||
需要注意的是,使用该扩展方法前需先下载好平台证书,并存入全局的 `CertificateManager`。有关 `CertificateManager` 的更多介绍,请参阅本文档[《高级技巧 - 如何加密请求中的敏感数据?》](./Advanced_RequestSensitiveDataEncryption.md)的有关章节。
|
需要注意的是,使用该扩展方法前需先下载好平台证书,并存入全局的 `CertificateManager`。有关 `CertificateManager` 的更多介绍,请阅读下方有关章节。
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -69,4 +69,10 @@ if (!ret)
|
|||||||
Console.WriteLine(error);
|
Console.WriteLine(error);
|
||||||
Console.WriteLine(error.InnerException);
|
Console.WriteLine(error.InnerException);
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 通过 `CertificateManager` 管理平台证书信息:
|
||||||
|
|
||||||
|
请参阅本文档[《高级技巧 - 如何加密请求中的敏感数据?》](./Advanced_RequestSensitiveDataEncryption.md)下的同名章节。
|
@ -44,9 +44,9 @@ var options = new WechatTenpayClientOptions()
|
|||||||
{
|
{
|
||||||
MerchantId = "微信商户号",
|
MerchantId = "微信商户号",
|
||||||
MerchantV3Secret = "微信商户 v3 API 密钥",
|
MerchantV3Secret = "微信商户 v3 API 密钥",
|
||||||
MerchantCertSerialNumber = "微信商户证书序列号",
|
MerchantCertificateSerialNumber = "微信商户证书序列号",
|
||||||
MerchantCertPrivateKey = "-----BEGIN PRIVATE KEY-----微信商户证书私钥-----END PRIVATE KEY-----",
|
MerchantCertificatePrivateKey = "-----BEGIN PRIVATE KEY-----微信商户证书私钥,即 `apiclient_key.pem` 文件内容-----END PRIVATE KEY-----",
|
||||||
CertificateManager = manager // 证书管理器的具体用法请参阅下文的高级技巧
|
PlatformCertificateManager = manager // 证书管理器的具体用法请参阅下文的高级技巧与加密、验签有关的章节
|
||||||
};
|
};
|
||||||
var client = new WechatTenpayClient(options);
|
var client = new WechatTenpayClient(options);
|
||||||
```
|
```
|
||||||
@ -90,7 +90,7 @@ else
|
|||||||
|
|
||||||
## 高级技巧
|
## 高级技巧
|
||||||
|
|
||||||
- [如何查看商户证书序列号?](./Advanced_MerchantCertSerialNumber.md)
|
- [如何查看商户证书序列号?](./Advanced_MerchantCertificateSerialNumber.md)
|
||||||
|
|
||||||
- [如何快速找到需要调用的 API 模型类名 / 方法名(附完整 API 对照表)?](./Advanced_ModelDefinition.md)
|
- [如何快速找到需要调用的 API 模型类名 / 方法名(附完整 API 对照表)?](./Advanced_ModelDefinition.md)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user