Files
DotNetCore.SKIT.FlurlHttpCl…/src/SKIT.FlurlHttpClient.Wechat.Api/WechatApiClientOptions.cs

133 lines
4.8 KiB
C#
Raw Normal View History

using System;
namespace SKIT.FlurlHttpClient.Wechat.Api
2021-05-10 15:30:00 +08:00
{
/// <summary>
/// 一个用于构造 <see cref="WechatApiClient"/> 时使用的配置项。
/// </summary>
public class WechatApiClientOptions
{
/// <summary>
/// 获取或设置请求超时时间(单位:毫秒)。
2024-01-29 23:11:56 +08:00
/// <para>
/// 默认值30000
/// </para>
2021-05-10 15:30:00 +08:00
/// </summary>
public int Timeout { get; set; } = 30 * 1000;
/// <summary>
/// 获取或设置微信 API 入口点。
2024-01-29 23:11:56 +08:00
/// <para>
/// 默认值:<see cref="WechatApiEndpoints.DEFAULT"/>
/// </para>
2021-05-10 15:30:00 +08:00
/// </summary>
public string Endpoint { get; set; } = WechatApiEndpoints.DEFAULT;
2021-05-10 15:30:00 +08:00
/// <summary>
/// 获取或设置微信 AppId。
/// </summary>
public string AppId { get; set; } = default!;
/// <summary>
/// 获取或设置微信 AppSecret。
/// </summary>
public string AppSecret { get; set; } = default!;
/// <summary>
/// 获取或设置微信服务器推送的 EncodingAESKey。
/// </summary>
public string? PushEncodingAESKey { get; set; }
/// <summary>
/// 获取或设置微信服务器推送的 Token。
/// </summary>
public string? PushToken { get; set; }
/// <summary>
/// 获取或设置即时配送公司帐号 AppKey用于小程序即使配送相关接口
/// </summary>
public string? ImmeDeliveryAppKey { get; set; }
/// <summary>
/// 获取或设置即时配送公司帐号 AppSecret用于小程序即使配送相关接口
/// </summary>
public string? ImmeDeliveryAppSecret { get; set; }
/// <summary>
/// 获取或设置虚拟支付 AppKey用于小程序虚拟支付相关接口
/// </summary>
public string? VirtualPaymentAppKey { get; set; }
/// <summary>
/// 获取或设置米大师平台 OfferId用于小游戏虚拟支付 1.0 相关接口)。
/// </summary>
public string? MidasOfferId { get; set; }
/// <summary>
/// 获取或设置米大师平台 AppKey用于小游戏虚拟支付 1.0 相关接口)。
/// </summary>
public string? MidasAppKey { get; set; }
/// <summary>
/// 获取或设置米大师平台 OfferId用于小游戏虚拟支付 2.0 相关接口)。
/// </summary>
public string? MidasOfferIdV2 { get; set; }
/// <summary>
/// 获取或设置米大师平台 AppKey用于小游戏虚拟支付 2.0 相关接口)。
/// </summary>
public string? MidasAppKeyV2 { get; set; }
/// <summary>
/// 获取或设置 API 安全鉴权模式是否开启。
/// </summary>
public bool SecurityApiEnabled { get; set; }
/// <summary>
/// 获取或设置 API 安全鉴权模式所使用的 AppId。如果不指定将使用 <see cref="AppId"/>。
/// </summary>
public string? SecurityApiAppId { get; set; }
/// <summary>
/// 获取或设置 API 安全鉴权模式对称加密算法。
/// <para>
/// 默认值:<see cref="Constants.SecurityApiSymmetricAlgorithms.AES"/>
/// </para>
/// </summary>
public string SecurityApiSymmetricAlgorithm { get; set; } = Constants.SecurityApiSymmetricAlgorithms.AES;
/// <summary>
/// 获取或设置 API 安全鉴权模式对称加密密钥编号。
/// </summary>
public string? SecurityApiSymmetricNumber { get; set; }
/// <summary>
2024-05-22 22:24:29 +08:00
/// 获取或设置 API 安全鉴权模式对称加密密钥(经过 Base64 编码)。
/// </summary>
2024-05-22 22:24:29 +08:00
public string? SecurityApiSymmetricEncodingKey { get; set; }
/// <summary>
/// 获取或设置 API 安全鉴权模式非对称加密算法。
/// <para>
/// 默认值:<see cref="Constants.SecurityApiAsymmetricAlgorithms.RSA"/>
/// </para>
/// </summary>
public string SecurityApiAsymmetricAlgorithm { get; set; } = Constants.SecurityApiAsymmetricAlgorithms.RSA;
/// <summary>
/// 获取或设置 API 安全鉴权模式非对称加密私钥编号。
/// </summary>
public string? SecurityApiAsymmetricNumber { get; set; }
/// <summary>
/// 获取或设置 API 安全鉴权模式非对称加密私钥。
/// </summary>
public string? SecurityApiAsymmetricPrivateKey { get; set; }
/// <summary>
/// 获取或设置 API 安全鉴权模式自定义请求路径匹配器。如果不指定将只匹配关键 API。
/// </summary>
public Func<string, bool>? SecurityApiCustomRequestPathMatcher { get; set; }
2021-05-10 15:30:00 +08:00
}
}