feat(wxapi): 新增微信云托管创建云托管环境接口

This commit is contained in:
Fu Diwei 2022-10-27 18:59:23 +08:00
parent 152922cc7a
commit 940bc4f7ae
9 changed files with 82 additions and 2 deletions

View File

@ -133,6 +133,25 @@ namespace SKIT.FlurlHttpClient.Wechat.Api
return await client.SendRequestWithJsonAsync<Models.ComponentTcbDescribeCloudBaseRunEnvironmentsResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
/// <summary>
/// <para>异步调用 [POST] /componenttcb/createcloudbaserunenv 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/cloudrun-batch/cloudenv-mgnt/createCloudbaseEnv.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.ComponentTcbCreateCloudBaseRunEnvironmentResponse> ExecuteComponentTcbCreateCloudBaseRunEnvironmentAsync(this WechatApiClient client, Models.ComponentTcbCreateCloudBaseRunEnvironmentRequest 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, "componenttcb", "createcloudbaserunenv")
.SetQueryParam("access_token", request.ComponentAccessToken);
return await client.SendRequestWithJsonAsync<Models.ComponentTcbCreateCloudBaseRunEnvironmentResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
#endregion
#region SCF

View File

@ -0,0 +1,38 @@
using System.Collections.Generic;
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /componenttcb/createcloudbaserunenv 接口的请求。</para>
/// </summary>
public class ComponentTcbCreateCloudBaseRunEnvironmentRequest : WechatApiRequest, IInferable<ComponentTcbCreateCloudBaseRunEnvironmentRequest, ComponentTcbCreateCloudBaseRunEnvironmentResponse>
{
/// <summary>
/// 获取或设置第三方平台 AccessToken。
/// </summary>
[Newtonsoft.Json.JsonIgnore]
[System.Text.Json.Serialization.JsonIgnore]
public string ComponentAccessToken { get; set; } = string.Empty;
/// <summary>
/// 获取或设置环境别名。
/// </summary>
[Newtonsoft.Json.JsonProperty("alias")]
[System.Text.Json.Serialization.JsonPropertyName("alias")]
public string? Alias { get; set; }
/// <summary>
/// 获取或设置私有网络 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("vpc_id")]
[System.Text.Json.Serialization.JsonPropertyName("vpc_id")]
public string? VPCId { get; set; }
/// <summary>
/// 获取或设置子网列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("sub_net_ids")]
[System.Text.Json.Serialization.JsonPropertyName("sub_net_ids")]
public IList<string>? SubNetIdList { get; set; }
}
}

View File

@ -0,0 +1,15 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /componenttcb/createcloudbaserunenv 接口的响应。</para>
/// </summary>
public class ComponentTcbCreateCloudBaseRunEnvironmentResponse : WechatApiResponse
{
/// <summary>
/// 获取或设置环境 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("env_id")]
[System.Text.Json.Serialization.JsonPropertyName("env_id")]
public string EnvironmentId { get; set; } = default!;
}
}

View File

@ -1,4 +1,4 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /componenttcb/createenv 接口的请求。</para>
@ -17,6 +17,6 @@
/// </summary>
[Newtonsoft.Json.JsonProperty("alias")]
[System.Text.Json.Serialization.JsonPropertyName("alias")]
public string Alias { get; set; } = string.Empty;
public string? Alias { get; set; }
}
}

View File

@ -0,0 +1,5 @@
{
"errcode": 0,
"errmsg": "ok",
"env_id": "testapi-xxxxsdffsewr"
}