feat(wxapi): 新增获取小程序插件用户的唯一标识相关接口

This commit is contained in:
Fu Diwei 2022-01-10 12:09:48 +08:00
parent cf6e0ecfbb
commit 5c5056a905
7 changed files with 63 additions and 5 deletions

View File

@ -63,6 +63,26 @@ namespace SKIT.FlurlHttpClient.Wechat.Api
return await client.SendRequestWithJsonAsync<Models.WxaGetPaidUnionIdResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
/// <summary>
/// <para>异步调用 [POST] /wxa/getpluginopenpid 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/user-info/auth.getPluginOpenPId.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.WxaGetPluginOpenIdResponse> ExecuteWxaGetPluginOpenIdAsync(this WechatApiClient client, Models.WxaGetPluginOpenIdRequest request, CancellationToken cancellationToken = default)
{
if (client is null) throw new ArgumentNullException(nameof(client));
if (request is null) throw new ArgumentNullException(nameof(request));
IFlurlRequest flurlReq = client
.CreateRequest(request, HttpMethod.Post, "wxa", "getpluginopenpid")
.SetQueryParam("access_token", request.AccessToken);
return await client.SendRequestWithJsonAsync<Models.WxaGetPluginOpenIdResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
#region Plugin
/// <summary>
/// <para>异步调用 [POST] /wxa/plugin?action=apply 接口。</para>

View File

@ -10,7 +10,7 @@ namespace SKIT.FlurlHttpClient.Wechat.Api
private const string BASE_URL = "https://open.weixin.qq.com/";
/// <summary>
/// <para>生成客户端 JS-SDK `wx.config` 所需的参数。</para>
/// <para>生成公众号 JS-SDK `wx.config` 所需的参数字典。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/JS-SDK.html#62 </para>
/// </summary>
/// <param name="client"></param>
@ -37,7 +37,7 @@ namespace SKIT.FlurlHttpClient.Wechat.Api
}
/// <summary>
/// <para>生成客户端 JS-SDK `wx.chooseInvoice` 接口所需的参数。</para>
/// <para>生成公众号 JS-SDK `wx.chooseInvoice` 接口所需的参数字典。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/offiaccount/WeChat_Invoice/Auto-print/API_Documentation.html#_6-4-%E5%8F%91%E7%A5%A8%E7%AD%BE%E5%90%8D%E6%96%B9%E6%B3%95 </para>
/// </summary>
/// <param name="client"></param>

View File

@ -0,0 +1,15 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/getpluginopenpid 接口的请求。</para>
/// </summary>
public class WxaGetPluginOpenIdRequest : WechatApiRequest
{
/// <summary>
/// 获取或设置插件用户标识凭证。
/// </summary>
[Newtonsoft.Json.JsonProperty("code")]
[System.Text.Json.Serialization.JsonPropertyName("code")]
public string Code { get; set; } = string.Empty;
}
}

View File

@ -0,0 +1,15 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [GET] /wxa/getpluginopenpid 接口的响应。</para>
/// </summary>
public class WxaGetPluginOpenIdResponse : WechatApiResponse
{
/// <summary>
/// 获取或设置插件用户唯一标识。
/// </summary>
[Newtonsoft.Json.JsonProperty("openpid")]
[System.Text.Json.Serialization.JsonPropertyName("openpid")]
public string PluginOpenId { get; set; } = default!;
}
}

View File

@ -17,7 +17,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3
public static class WechatTenpayClientParameterExtensions
{
/// <summary>
/// <para>生成客户端 JSAPI / 小程序调起支付所需的参数。</para>
/// <para>生成客户端 JSAPI / 小程序调起支付所需的参数字典。</para>
/// <para>REF: https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter3_1_4.shtml </para>
/// <para>REF: https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter3_5_4.shtml </para>
/// <para>REF: https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter5_1_8.shtml </para>
@ -59,7 +59,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3
}
/// <summary>
/// <para>生成 APP 调起支付所需的参数。</para>
/// <para>生成 APP 调起支付所需的参数字典。</para>
/// <para>REF: https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter3_2_4.shtml </para>
/// <para>REF: https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter5_1_6.shtml </para>
/// <para>REF: https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter4_2_4.shtml </para>
@ -76,7 +76,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3
}
/// <summary>
/// <para>生成 APP 调起支付所需的参数。</para>
/// <para>生成 APP 调起支付所需的参数字典。</para>
/// <para>REF: https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter3_2_4.shtml </para>
/// <para>REF: https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter5_1_6.shtml </para>
/// <para>REF: https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter4_2_4.shtml </para>

View File

@ -0,0 +1,3 @@
{
"code": "0c2b206443ce0c23338f6cb4d1ec15a1af0b8bcddbff26510dda4b23a433c391"
}

View File

@ -0,0 +1,5 @@
{
"errcode": 0,
"errmsg": "ok",
"openpid": "GACo74wkDIkDzEhkwRwgjGt1pqlk"
}