diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/DouyinMicroAppOpenApiClient.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/DouyinMicroAppOpenApiClient.cs
index bd5faf8a..8db0f802 100644
--- a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/DouyinMicroAppOpenApiClient.cs
+++ b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/DouyinMicroAppOpenApiClient.cs
@@ -11,6 +11,8 @@ namespace SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi
///
public class DouyinMicroAppOpenApiClient : CommonClientBase, ICommonClient
{
+ public readonly string _BASEURL_LEGACY;
+
///
/// 获取当前客户端使用的抖音小程序凭证。
///
@@ -40,6 +42,8 @@ internal protected DouyinMicroAppOpenApiClient(DouyinMicroAppOpenApiClientOption
FlurlClient.BaseUrl = options.Endpoints ?? DouyinMicroAppOpenApiEndpoints.DEFAULT;
FlurlClient.WithTimeout(options.Timeout <= 0 ? Timeout.InfiniteTimeSpan : TimeSpan.FromMilliseconds(options.Timeout));
+
+ _BASEURL_LEGACY = options.EndpointForLegacy ?? DouyinMicroAppEndpoints.LEGACY_DEFAULT;
}
///
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/DouyinMicroAppOpenApiClientOptions.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/DouyinMicroAppOpenApiClientOptions.cs
index 72beaddb..264d36a4 100644
--- a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/DouyinMicroAppOpenApiClientOptions.cs
+++ b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/DouyinMicroAppOpenApiClientOptions.cs
@@ -12,11 +12,17 @@ public class DouyinMicroAppOpenApiClientOptions
public int Timeout { get; set; } = 30 * 1000;
///
- /// 获取或设置抖音小程序服务商平台 API 域名。
+ /// 获取或设置抖音小程序服务商平台 API 入口点。
/// 默认值:
///
public string Endpoints { get; set; } = DouyinMicroAppOpenApiEndpoints.DEFAULT;
+ ///
+ /// 获取或设置抖音小程序服务商平台旧版 API 入口点。
+ /// 默认值:
+ ///
+ public string EndpointForLegacy { get; set; } = DouyinMicroAppOpenApiEndpoints.LEGACY_DEFAULT;
+
///
/// 获取或设置抖音小程序服务商 AppId。
///
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/DouyinMicroAppOpenApiEndpoints.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/DouyinMicroAppOpenApiEndpoints.cs
index c48febee..19f53ccf 100644
--- a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/DouyinMicroAppOpenApiEndpoints.cs
+++ b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/DouyinMicroAppOpenApiEndpoints.cs
@@ -6,8 +6,13 @@ namespace SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi
public static class DouyinMicroAppOpenApiEndpoints
{
///
- /// 服务商平台接口域名(默认)。
+ /// 默认域名。
///
- public const string DEFAULT = "https://open.microapp.bytedance.com/openapi";
+ public const string DEFAULT = "https://open.douyin.com/api";
+
+ ///
+ /// 旧版接口服务商平台接口域名。
+ ///
+ public const string LEGACY_DEFAULT = "https://open.microapp.bytedance.com/openapi";
}
}
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Extensions/DouyinMicroAppOpenApiClientExecuteLegacyAuthExtensions.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Extensions/DouyinMicroAppOpenApiClientExecuteLegacyAuthExtensions.cs
new file mode 100644
index 00000000..34388ead
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Extensions/DouyinMicroAppOpenApiClientExecuteLegacyAuthExtensions.cs
@@ -0,0 +1,117 @@
+using System;
+using System.Net.Http;
+using System.Threading;
+using System.Threading.Tasks;
+using Flurl;
+using Flurl.Http;
+
+namespace SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi
+{
+ public static class DouyinMicroAppOpenApiClientExecuteLegacyAuthExtensions
+ {
+ ///
+ /// 异步调用 [GET] /v1/auth/tp/token 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteOpenApiAuthThirdPartyTokenV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiAuthThirdPartyTokenV1Request request, CancellationToken cancellationToken = default)
+ {
+ if (client is null) throw new ArgumentNullException(nameof(client));
+ if (request is null) throw new ArgumentNullException(nameof(request));
+
+ if (request.ComponentAppSecret is null)
+ request.ComponentAppSecret = client.Credentials.ComponentAppSecret;
+
+ IFlurlRequest flurlReq = client
+ .CreateFlurlRequest(request, HttpMethod.Get, "v1", "auth", "tp", "token")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "auth", "tp", "token"))
+ .SetQueryParam("component_appid", request.ComponentAppId)
+ .SetQueryParam("component_appsecret", request.ComponentAppSecret)
+ .SetQueryParam("component_ticket", request.ComponentTicket);
+
+ return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+
+ ///
+ /// 异步调用 [POST] /v2/auth/pre_auth_code 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteOpenApiAuthPreAuthCodeV2Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiAuthPreAuthCodeV2Request 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
+ .CreateFlurlRequest(request, HttpMethod.Post, "v2", "auth", "pre_auth_code")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v2", "auth", "pre_auth_code"))
+ .SetQueryParam("component_appid", request.ComponentAppId)
+ .SetQueryParam("component_access_token", request.ComponentAccessToken);
+
+ return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+
+ ///
+ /// 异步调用 [POST] /v2/auth/gen_link 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteOpenApiAuthGenerateLinkV2Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiAuthGenerateLinkV2Request 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
+ .CreateFlurlRequest(request, HttpMethod.Post, "v2", "auth", "gen_link")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v2", "auth", "gen_link"))
+ .SetQueryParam("component_appid", request.ComponentAppId)
+ .SetQueryParam("component_access_token", request.ComponentAccessToken);
+
+ return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+
+ ///
+ /// 异步调用 [POST] /v1/auth/retrieve 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteOpenApiAuthRetrieveV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiAuthRetrieveV1Request 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
+ .CreateFlurlRequest(request, HttpMethod.Post, "v1", "auth", "retrieve")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "auth", "retrieve"))
+ .SetQueryParam("component_appid", request.ComponentAppId)
+ .SetQueryParam("component_access_token", request.ComponentAccessToken)
+ .SetQueryParam("authorization_appid", request.AuthorizerAppId);
+
+ return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Extensions/DouyinMicroAppOpenApiClientExecuteOpenApiExtensions.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Extensions/DouyinMicroAppOpenApiClientExecuteLegacyMicroAppExtensions.cs
similarity index 62%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Extensions/DouyinMicroAppOpenApiClientExecuteOpenApiExtensions.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Extensions/DouyinMicroAppOpenApiClientExecuteLegacyMicroAppExtensions.cs
index ae66f751..73fd9024 100644
--- a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Extensions/DouyinMicroAppOpenApiClientExecuteOpenApiExtensions.cs
+++ b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Extensions/DouyinMicroAppOpenApiClientExecuteLegacyMicroAppExtensions.cs
@@ -3,507 +3,13 @@
using System.Text;
using System.Threading;
using System.Threading.Tasks;
+using Flurl;
using Flurl.Http;
namespace SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi
{
- public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
+ public static class DouyinMicroAppOpenApiClientExecuteLegacyMicroAppExtensions
{
- #region Auth
- ///
- /// 异步调用 [GET] /v1/auth/tp/token 接口。
- ///
- /// REF:
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- public static async Task ExecuteOpenApiAuthThirdPartyTokenV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiAuthThirdPartyTokenV1Request request, CancellationToken cancellationToken = default)
- {
- if (client is null) throw new ArgumentNullException(nameof(client));
- if (request is null) throw new ArgumentNullException(nameof(request));
-
- if (request.ComponentAppSecret is null)
- request.ComponentAppSecret = client.Credentials.ComponentAppSecret;
-
- IFlurlRequest flurlReq = client
- .CreateFlurlRequest(request, HttpMethod.Get, "v1", "auth", "tp", "token")
- .SetQueryParam("component_appid", request.ComponentAppId)
- .SetQueryParam("component_appsecret", request.ComponentAppSecret)
- .SetQueryParam("component_ticket", request.ComponentTicket);
-
- return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
- }
-
- ///
- /// 异步调用 [POST] /v2/auth/pre_auth_code 接口。
- ///
- /// REF:
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- public static async Task ExecuteOpenApiAuthPreAuthCodeV2Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiAuthPreAuthCodeV2Request 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
- .CreateFlurlRequest(request, HttpMethod.Post, "v2", "auth", "pre_auth_code")
- .SetQueryParam("component_appid", request.ComponentAppId)
- .SetQueryParam("component_access_token", request.ComponentAccessToken);
-
- return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
- }
-
- ///
- /// 异步调用 [POST] /v2/auth/gen_link 接口。
- ///
- /// REF:
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- public static async Task ExecuteOpenApiAuthGenerateLinkV2Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiAuthGenerateLinkV2Request 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
- .CreateFlurlRequest(request, HttpMethod.Post, "v2", "auth", "gen_link")
- .SetQueryParam("component_appid", request.ComponentAppId)
- .SetQueryParam("component_access_token", request.ComponentAccessToken);
-
- return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
- }
-
- ///
- /// 异步调用 [POST] /v1/auth/retrieve 接口。
- ///
- /// REF:
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- public static async Task ExecuteOpenApiAuthRetrieveV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiAuthRetrieveV1Request 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
- .CreateFlurlRequest(request, HttpMethod.Post, "v1", "auth", "retrieve")
- .SetQueryParam("component_appid", request.ComponentAppId)
- .SetQueryParam("component_access_token", request.ComponentAccessToken)
- .SetQueryParam("authorization_appid", request.AuthorizerAppId);
-
- return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
- }
- #endregion
-
- #region OAuth
- ///
- /// 异步调用 [GET] /v1/oauth/token 接口。
- ///
- /// REF:
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- public static async Task ExecuteOpenApiOAuthTokenV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiOAuthTokenV1Request 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
- .CreateFlurlRequest(request, HttpMethod.Get, "v1", "oauth", "token")
- .SetQueryParam("component_appid", request.ComponentAppId)
- .SetQueryParam("component_access_token", request.ComponentAccessToken)
- .SetQueryParam("grant_type", request.GrantType);
-
- if (request.AuthCode is not null)
- flurlReq.SetQueryParam("authorization_code", request.AuthCode);
-
- if (request.AuthorizerRefreshToken is not null)
- flurlReq.SetQueryParam("authorizer_refresh_token", request.AuthorizerRefreshToken);
-
- return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
- }
- #endregion
-
- #region ThirdParty
- ///
- /// 异步调用 [GET] /v1/tp/auth_app_list 接口。
- ///
- /// REF:
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- public static async Task ExecuteOpenApiThirdPartyAuthAppListV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyAuthAppListV1Request 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
- .CreateFlurlRequest(request, HttpMethod.Get, "v1", "tp", "auth_app_list")
- .SetQueryParam("component_appid", request.ComponentAppId)
- .SetQueryParam("component_access_token", request.ComponentAccessToken)
- .SetQueryParam("page", request.PageNumber)
- .SetQueryParam("size", request.PageSize);
-
- return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
- }
-
- ///
- /// 异步调用 [POST] /v1/tp/upload_pic_material 接口。
- ///
- /// REF:
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- public static async Task ExecuteOpenApiThirdPartyUploadPictureMaterialV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyUploadPictureMaterialV1Request request, CancellationToken cancellationToken = default)
- {
- if (client is null) throw new ArgumentNullException(nameof(client));
- if (request is null) throw new ArgumentNullException(nameof(request));
-
- if (request.MaterialFileName is null)
- request.MaterialFileName = Guid.NewGuid().ToString("N").ToLower() + ".jpg";
-
- IFlurlRequest flurlReq = client
- .CreateFlurlRequest(request, HttpMethod.Post, "v1", "tp", "upload_pic_material")
- .SetQueryParam("component_appid", request.ComponentAppId)
- .SetQueryParam("component_access_token", request.ComponentAccessToken);
-
- using var httpContent = Utilities.FileHttpContentBuilder.Build(fileName: request.MaterialFileName, fileBytes: request.MaterialFileBytes, fileContentType: "image/jpeg", formDataName: "material_file");
- httpContent.Add(new ByteArrayContent(Encoding.UTF8.GetBytes(request.MaterialType.ToString())), "material_type");
-
- return await client.SendFlurlRequestAsync(flurlReq, httpContent: httpContent, cancellationToken: cancellationToken).ConfigureAwait(false);
- }
-
- #region ThirdParty/Domain
- ///
- /// 异步调用 [GET] /v1/tp/download/webview_file 接口。
- ///
- /// REF:
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- public static async Task ExecuteOpenApiThirdPartyDownloadWebviewFileV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyDownloadWebviewFileV1Request 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
- .CreateFlurlRequest(request, HttpMethod.Get, "v1", "tp", "download", "webview_file")
- .SetQueryParam("component_appid", request.ComponentAppId)
- .SetQueryParam("component_access_token", request.ComponentAccessToken);
-
- return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
- }
- #endregion
-
- #region ThirdParty/POI
- ///
- /// 异步调用 [POST] /v1/tp/poi/supplier/match 接口。
- ///
- /// REF:
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- public static async Task ExecuteOpenApiThirdPartyPOISupplierMatchV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyPOISupplierMatchV1Request 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
- .CreateFlurlRequest(request, HttpMethod.Post, "v1", "tp", "poi", "supplier", "match")
- .SetQueryParam("component_appid", request.ComponentAppId)
- .SetQueryParam("component_access_token", request.ComponentAccessToken);
-
- return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
- }
-
- ///
- /// 异步调用 [GET] /v1/tp/poi/supplier/query/match_task 接口。
- ///
- /// REF:
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- public static async Task ExecuteOpenApiThirdPartyPOISupplierQueryMatchTaskV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyPOISupplierQueryMatchTaskV1Request 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
- .CreateFlurlRequest(request, HttpMethod.Get, "v1", "tp", "poi", "supplier", "query", "match_task")
- .SetQueryParam("component_appid", request.ComponentAppId)
- .SetQueryParam("component_access_token", request.ComponentAccessToken)
- .SetQueryParam("task_ids", string.Join(",", request.TaskIdList));
-
- return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
- }
-
- ///
- /// 异步调用 [GET] /v1/tp/poi/supplier/query/match 接口。
- ///
- /// REF:
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- public static async Task ExecuteOpenApiThirdPartyPOISupplierQueryMatchV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyPOISupplierQueryMatchV1Request 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
- .CreateFlurlRequest(request, HttpMethod.Get, "v1", "tp", "poi", "supplier", "query", "match")
- .SetQueryParam("component_appid", request.ComponentAppId)
- .SetQueryParam("component_access_token", request.ComponentAccessToken)
- .SetQueryParam("supplier_ext_ids", string.Join(",", request.SupplierExternalIds));
-
- return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
- }
-
- ///
- /// 异步调用 [POST] /v1/tp/poi/supplier/sync 接口。
- ///
- /// REF:
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- public static async Task ExecuteOpenApiThirdPartyPOISupplierSyncV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyPOISupplierSyncV1Request 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
- .CreateFlurlRequest(request, HttpMethod.Post, "v1", "tp", "poi", "supplier", "sync")
- .SetQueryParam("component_appid", request.ComponentAppId)
- .SetQueryParam("component_access_token", request.ComponentAccessToken);
-
- return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
- }
-
- ///
- /// 异步调用 [GET] /v1/tp/poi/supplier/query 接口。
- ///
- /// REF:
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- public static async Task ExecuteOpenApiThirdPartyPOISupplierQueryV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyPOISupplierQueryV1Request 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
- .CreateFlurlRequest(request, HttpMethod.Get, "v1", "tp", "poi", "supplier", "query")
- .SetQueryParam("component_appid", request.ComponentAppId)
- .SetQueryParam("component_access_token", request.ComponentAccessToken)
- .SetQueryParam("supplier_ext_id", request.SupplierExternalId);
-
- return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
- }
-
- ///
- /// 异步调用 [GET] /v1/tp/poi/base/query/amap 接口。
- ///
- /// REF:
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- public static async Task ExecuteOpenApiThirdPartyPOIBaseQueryAMapV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyPOIBaseQueryAMapV1Request 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
- .CreateFlurlRequest(request, HttpMethod.Get, "v1", "tp", "poi", "base", "query", "amap")
- .SetQueryParam("component_appid", request.ComponentAppId)
- .SetQueryParam("component_access_token", request.ComponentAccessToken)
- .SetQueryParam("amap_id", request.AMapId);
-
- return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
- }
- #endregion
-
- #region ThirdParty/Template
- ///
- /// 异步调用 [GET] /v1/tp/template/get_tpl_list 接口。
- ///
- /// REF:
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- public static async Task ExecuteOpenApiThirdPartyTemplateGetTemplateListV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyTemplateGetTemplateListV1Request 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
- .CreateFlurlRequest(request, HttpMethod.Get, "v1", "tp", "template", "get_tpl_list")
- .SetQueryParam("component_appid", request.ComponentAppId)
- .SetQueryParam("component_access_token", request.ComponentAccessToken);
-
- return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
- }
-
- ///
- /// 异步调用 [GET] /v1/tp/template/get_draft_list 接口。
- ///
- /// REF:
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- [Obsolete("相关接口或字段于 2022-12-28 下线。")]
- public static async Task ExecuteOpenApiThirdPartyTemplateGetDraftListV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyTemplateGetDraftListV1Request 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
- .CreateFlurlRequest(request, HttpMethod.Get, "v1", "tp", "template", "get_draft_list")
- .SetQueryParam("component_appid", request.ComponentAppId)
- .SetQueryParam("component_access_token", request.ComponentAccessToken);
-
- return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
- }
-
- ///
- /// 异步调用 [GET] /v1/tp/template/get_tpl_app_list 接口。
- ///
- /// REF:
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- public static async Task ExecuteOpenApiThirdPartyTemplateGetTemplateAppListV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyTemplateGetTemplateAppListV1Request 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
- .CreateFlurlRequest(request, HttpMethod.Get, "v1", "tp", "template", "get_tpl_app_list")
- .SetQueryParam("component_appid", request.ComponentAppId)
- .SetQueryParam("component_access_token", request.ComponentAccessToken);
-
- return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
- }
-
- ///
- /// 异步调用 [POST] /v1/tp/template/add_tpl 接口。
- ///
- /// REF:
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- public static async Task ExecuteOpenApiThirdPartyTemplateAddTemplateV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyTemplateAddTemplateV1Request 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
- .CreateFlurlRequest(request, HttpMethod.Post, "v1", "tp", "template", "add_tpl")
- .SetQueryParam("component_appid", request.ComponentAppId)
- .SetQueryParam("component_access_token", request.ComponentAccessToken);
-
- return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
- }
-
- ///
- /// 异步调用 [POST] /v1/tp/template/del_tpl 接口。
- ///
- /// REF:
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- public static async Task ExecuteOpenApiThirdPartyTemplateDeleteTemplateV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyTemplateDeleteTemplateV1Request 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
- .CreateFlurlRequest(request, HttpMethod.Post, "v1", "tp", "template", "del_tpl")
- .SetQueryParam("component_appid", request.ComponentAppId)
- .SetQueryParam("component_access_token", request.ComponentAccessToken);
-
- return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
- }
- #endregion
- #endregion
-
- #region MicroApp
///
/// 异步调用 [GET] /v1/microapp/code2session 接口。
///
@@ -522,6 +28,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "v1", "microapp", "code2session")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "code2session"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken)
.SetQueryParam("code", request.Code)
@@ -554,6 +61,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v1", "microapp", "upload_material")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "upload_material"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -563,7 +71,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
return await client.SendFlurlRequestAsync(flurlReq, httpContent: httpContent, cancellationToken: cancellationToken).ConfigureAwait(false);
}
- #region MicroApp/App
+ #region App
///
/// 异步调用 [GET] /v1/microapp/app/info 接口。
///
@@ -582,6 +90,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "v1", "microapp", "app", "info")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "app", "info"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -606,6 +115,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v1", "microapp", "app", "qrcode")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "app", "qrcode"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -630,6 +140,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "v1", "microapp", "app", "check_app_name")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "app", "check_app_name"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken)
.SetQueryParam("app_name", request.AppName);
@@ -655,6 +166,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v1", "microapp", "app", "modify_app_name")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "app", "modify_app_name"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -679,6 +191,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v1", "microapp", "app", "modify_app_intro")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "app", "modify_app_intro"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -703,6 +216,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v1", "microapp", "app", "modify_app_icon")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "app", "modify_app_icon"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -727,6 +241,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "v1", "microapp", "app", "all_categories")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "app", "all_categories"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -751,6 +266,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "v1", "microapp", "app", "categories")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "app", "categories"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -775,6 +291,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v1", "microapp", "app", "add_categories")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "app", "add_categories"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -799,6 +316,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v1", "microapp", "app", "del_categories")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "app", "del_categories"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -823,6 +341,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v1", "microapp", "app", "supply_categories")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "app", "supply_categories"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -847,6 +366,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v1", "microapp", "app", "modify_server_domain")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "app", "modify_server_domain"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -871,6 +391,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v1", "microapp", "app", "modify_webview_domain")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "app", "modify_webview_domain"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -895,6 +416,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "v1", "microapp", "app", "quality_rating")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "app", "quality_rating"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -919,6 +441,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "v1", "microapp", "app", "credit_score")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "app", "credit_score"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -926,7 +449,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
}
#endregion
- #region MicroApp/Operation
+ #region Operation
///
/// 异步调用 [GET] /v1/microapp/operation/video_application_status 接口。
///
@@ -945,6 +468,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "v1", "microapp", "operation", "video_application_status")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "operation", "video_application_status"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -969,6 +493,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v1", "microapp", "operation", "video_application")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "operation", "video_application"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -993,6 +518,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "v1", "microapp", "operation", "live_application_status")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "operation", "live_application_status"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -1017,6 +543,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v1", "microapp", "operation", "live_application")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "operation", "live_application"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -1041,6 +568,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "v1", "microapp", "operation", "phone_number_application_status")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "operation", "phone_number_application_status"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -1065,6 +593,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v1", "microapp", "operation", "phone_number_application")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "operation", "phone_number_application"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -1089,6 +618,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "v1", "microapp", "operation", "share_tpl_list")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "operation", "share_tpl_list"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken)
.SetQueryParam("page", request.PageNumber)
@@ -1115,6 +645,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v1", "microapp", "operation", "add_share_tpl")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "operation", "add_share_tpl"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -1139,6 +670,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v1", "microapp", "operation", "modify_share_tpl")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "operation", "modify_share_tpl"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -1163,6 +695,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v1", "microapp", "operation", "del_share_tpl")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "operation", "del_share_tpl"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -1187,6 +720,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v1", "microapp", "operation", "set_default_share_tpl")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "operation", "set_default_share_tpl"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -1211,6 +745,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v1", "microapp", "operation", "add_shop_material")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "operation", "add_shop_material"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -1235,6 +770,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "v1", "microapp", "operation", "query_shop_material")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "operation", "query_shop_material"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken)
.SetQueryParam("supplier_ext_id", request.SupplierExternalId);
@@ -1243,7 +779,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
}
#endregion
- #region MicroApp/Package
+ #region Package
///
/// 异步调用 [POST] /v1/microapp/package/upload 接口。
///
@@ -1262,6 +798,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v1", "microapp", "package", "upload")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "package", "upload"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -1286,6 +823,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "v1", "microapp", "package", "audit_hosts")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "package", "audit_hosts"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -1310,6 +848,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v2", "microapp", "package", "audit")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v2", "microapp", "package", "audit"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -1334,6 +873,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v1", "microapp", "package", "revoke_audit")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "package", "revoke_audit"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -1358,6 +898,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v1", "microapp", "package", "release")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "package", "release"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -1382,6 +923,7 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v1", "microapp", "package", "rollback")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "package", "rollback"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
@@ -1406,87 +948,12 @@ public static class DouyinMicroAppOpenApiClientExecuteOpenApiExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "v1", "microapp", "package", "versions")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "microapp", "package", "versions"))
.SetQueryParam("component_appid", request.ComponentAppId)
.SetQueryParam("authorizer_access_token", request.AuthorizerAccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
#endregion
- #endregion
-
- #region Settle
- ///
- /// 异步调用 [POST] /v1/settle/pre_check 接口。
- ///
- /// REF:
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- public static async Task ExecuteOpenApiSettlePreCheckV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiSettlePreCheckV1Request 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
- .CreateFlurlRequest(request, HttpMethod.Post, "v1", "settle", "pre_check")
- .SetQueryParam("component_appid", request.ComponentAppId)
- .SetQueryParam("component_access_token", request.ComponentAccessToken);
-
- return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
- }
-
- ///
- /// 异步调用 [POST] /v1/settle/apply 接口。
- ///
- /// REF:
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- public static async Task ExecuteOpenApiSettleApplyV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiSettleApplyV1Request 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
- .CreateFlurlRequest(request, HttpMethod.Post, "v1", "settle", "apply")
- .SetQueryParam("component_appid", request.ComponentAppId)
- .SetQueryParam("component_access_token", request.ComponentAccessToken);
-
- return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
- }
-
- ///
- /// 异步调用 [GET] /v1/settle/get_apply_status 接口。
- ///
- /// REF:
- ///
- ///
- ///
- ///
- ///
- ///
- ///
- public static async Task ExecuteOpenApiSettleGetApplyStatusV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiSettleGetApplyStatusV1Request 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
- .CreateFlurlRequest(request, HttpMethod.Get, "v1", "settle", "get_apply_status")
- .SetQueryParam("component_appid", request.ComponentAppId)
- .SetQueryParam("component_access_token", request.ComponentAccessToken)
- .SetQueryParam("apply_id", request.ApplyId);
-
- return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
- }
- #endregion
}
}
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Extensions/DouyinMicroAppOpenApiClientExecuteLegacyOAuthExtensions.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Extensions/DouyinMicroAppOpenApiClientExecuteLegacyOAuthExtensions.cs
new file mode 100644
index 00000000..d5ce9cd5
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Extensions/DouyinMicroAppOpenApiClientExecuteLegacyOAuthExtensions.cs
@@ -0,0 +1,41 @@
+using System;
+using System.Net.Http;
+using System.Threading;
+using System.Threading.Tasks;
+using Flurl;
+using Flurl.Http;
+
+namespace SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi
+{
+ public static class DouyinMicroAppOpenApiClientExecuteLegacyOAuthExtensions
+ {
+ ///
+ /// 异步调用 [GET] /v1/oauth/token 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteOpenApiOAuthTokenV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiOAuthTokenV1Request 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
+ .CreateFlurlRequest(request, HttpMethod.Get, "v1", "oauth", "token")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "oauth", "token"))
+ .SetQueryParam("component_appid", request.ComponentAppId)
+ .SetQueryParam("component_access_token", request.ComponentAccessToken)
+ .SetQueryParam("grant_type", request.GrantType)
+ .SetQueryParam("authorization_code", request.AuthCode)
+ .SetQueryParam("authorizer_refresh_token", request.AuthorizerRefreshToken);
+
+ return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Extensions/DouyinMicroAppOpenApiClientExecuteLegacySettleExtensions.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Extensions/DouyinMicroAppOpenApiClientExecuteLegacySettleExtensions.cs
new file mode 100644
index 00000000..24bbd334
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Extensions/DouyinMicroAppOpenApiClientExecuteLegacySettleExtensions.cs
@@ -0,0 +1,88 @@
+using System;
+using System.Net.Http;
+using System.Threading;
+using System.Threading.Tasks;
+using Flurl;
+using Flurl.Http;
+
+namespace SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi
+{
+ public static class DouyinMicroAppOpenApiClientExecuteLegacySettleExtensions
+ {
+ ///
+ /// 异步调用 [POST] /v1/settle/pre_check 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteOpenApiSettlePreCheckV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiSettlePreCheckV1Request 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
+ .CreateFlurlRequest(request, HttpMethod.Post, "v1", "settle", "pre_check")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "settle", "pre_check"))
+ .SetQueryParam("component_appid", request.ComponentAppId)
+ .SetQueryParam("component_access_token", request.ComponentAccessToken);
+
+ return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+
+ ///
+ /// 异步调用 [POST] /v1/settle/apply 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteOpenApiSettleApplyV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiSettleApplyV1Request 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
+ .CreateFlurlRequest(request, HttpMethod.Post, "v1", "settle", "apply")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "settle", "apply"))
+ .SetQueryParam("component_appid", request.ComponentAppId)
+ .SetQueryParam("component_access_token", request.ComponentAccessToken);
+
+ return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+
+ ///
+ /// 异步调用 [GET] /v1/settle/get_apply_status 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteOpenApiSettleGetApplyStatusV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiSettleGetApplyStatusV1Request 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
+ .CreateFlurlRequest(request, HttpMethod.Get, "v1", "settle", "get_apply_status")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "settle", "get_apply_status"))
+ .SetQueryParam("component_appid", request.ComponentAppId)
+ .SetQueryParam("component_access_token", request.ComponentAccessToken)
+ .SetQueryParam("apply_id", request.ApplyId);
+
+ return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Extensions/DouyinMicroAppOpenApiClientExecuteLegacyThirdPartyExtensions.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Extensions/DouyinMicroAppOpenApiClientExecuteLegacyThirdPartyExtensions.cs
new file mode 100644
index 00000000..5db946ca
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Extensions/DouyinMicroAppOpenApiClientExecuteLegacyThirdPartyExtensions.cs
@@ -0,0 +1,382 @@
+using System;
+using System.Net.Http;
+using System.Text;
+using System.Threading;
+using System.Threading.Tasks;
+using Flurl;
+using Flurl.Http;
+
+namespace SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi
+{
+ public static class DouyinMicroAppOpenApiClientExecuteLegacyThirdPartyExtensions
+ {
+ ///
+ /// 异步调用 [GET] /v1/tp/auth_app_list 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteOpenApiThirdPartyAuthAppListV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyAuthAppListV1Request 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
+ .CreateFlurlRequest(request, HttpMethod.Get, "v1", "tp", "auth_app_list")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "tp", "auth_app_list"))
+ .SetQueryParam("component_appid", request.ComponentAppId)
+ .SetQueryParam("component_access_token", request.ComponentAccessToken)
+ .SetQueryParam("page", request.PageNumber)
+ .SetQueryParam("size", request.PageSize);
+
+ return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+
+ ///
+ /// 异步调用 [POST] /v1/tp/upload_pic_material 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteOpenApiThirdPartyUploadPictureMaterialV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyUploadPictureMaterialV1Request request, CancellationToken cancellationToken = default)
+ {
+ if (client is null) throw new ArgumentNullException(nameof(client));
+ if (request is null) throw new ArgumentNullException(nameof(request));
+
+ if (request.MaterialFileName is null)
+ request.MaterialFileName = Guid.NewGuid().ToString("N").ToLower() + ".jpg";
+
+ IFlurlRequest flurlReq = client
+ .CreateFlurlRequest(request, HttpMethod.Post, "v1", "tp", "upload_pic_material")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "tp", "upload_pic_material"))
+ .SetQueryParam("component_appid", request.ComponentAppId)
+ .SetQueryParam("component_access_token", request.ComponentAccessToken);
+
+ using var httpContent = Utilities.FileHttpContentBuilder.Build(fileName: request.MaterialFileName, fileBytes: request.MaterialFileBytes, fileContentType: "image/jpeg", formDataName: "material_file");
+ httpContent.Add(new ByteArrayContent(Encoding.UTF8.GetBytes(request.MaterialType.ToString())), "material_type");
+
+ return await client.SendFlurlRequestAsync(flurlReq, httpContent: httpContent, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+
+ #region Domain
+ ///
+ /// 异步调用 [GET] /v1/tp/download/webview_file 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteOpenApiThirdPartyDownloadWebviewFileV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyDownloadWebviewFileV1Request 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
+ .CreateFlurlRequest(request, HttpMethod.Get, "v1", "tp", "download", "webview_file")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "tp", "download", "webview_file"))
+ .SetQueryParam("component_appid", request.ComponentAppId)
+ .SetQueryParam("component_access_token", request.ComponentAccessToken);
+
+ return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+ #endregion
+
+ #region POI
+ ///
+ /// 异步调用 [POST] /v1/tp/poi/supplier/match 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteOpenApiThirdPartyPOISupplierMatchV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyPOISupplierMatchV1Request 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
+ .CreateFlurlRequest(request, HttpMethod.Post, "v1", "tp", "poi", "supplier", "match")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "tp", "poi", "supplier", "match"))
+ .SetQueryParam("component_appid", request.ComponentAppId)
+ .SetQueryParam("component_access_token", request.ComponentAccessToken);
+
+ return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+
+ ///
+ /// 异步调用 [GET] /v1/tp/poi/supplier/query/match_task 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteOpenApiThirdPartyPOISupplierQueryMatchTaskV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyPOISupplierQueryMatchTaskV1Request 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
+ .CreateFlurlRequest(request, HttpMethod.Get, "v1", "tp", "poi", "supplier", "query", "match_task")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "tp", "poi", "supplier", "query", "match_task"))
+ .SetQueryParam("component_appid", request.ComponentAppId)
+ .SetQueryParam("component_access_token", request.ComponentAccessToken)
+ .SetQueryParam("task_ids", string.Join(",", request.TaskIdList));
+
+ return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+
+ ///
+ /// 异步调用 [GET] /v1/tp/poi/supplier/query/match 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteOpenApiThirdPartyPOISupplierQueryMatchV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyPOISupplierQueryMatchV1Request 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
+ .CreateFlurlRequest(request, HttpMethod.Get, "v1", "tp", "poi", "supplier", "query", "match")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "tp", "poi", "supplier", "query", "match"))
+ .SetQueryParam("component_appid", request.ComponentAppId)
+ .SetQueryParam("component_access_token", request.ComponentAccessToken)
+ .SetQueryParam("supplier_ext_ids", string.Join(",", request.SupplierExternalIds));
+
+ return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+
+ ///
+ /// 异步调用 [POST] /v1/tp/poi/supplier/sync 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteOpenApiThirdPartyPOISupplierSyncV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyPOISupplierSyncV1Request 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
+ .CreateFlurlRequest(request, HttpMethod.Post, "v1", "tp", "poi", "supplier", "sync")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "tp", "poi", "supplier", "sync"))
+ .SetQueryParam("component_appid", request.ComponentAppId)
+ .SetQueryParam("component_access_token", request.ComponentAccessToken);
+
+ return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+
+ ///
+ /// 异步调用 [GET] /v1/tp/poi/supplier/query 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteOpenApiThirdPartyPOISupplierQueryV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyPOISupplierQueryV1Request 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
+ .CreateFlurlRequest(request, HttpMethod.Get, "v1", "tp", "poi", "supplier", "query")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "tp", "poi", "supplier", "query"))
+ .SetQueryParam("component_appid", request.ComponentAppId)
+ .SetQueryParam("component_access_token", request.ComponentAccessToken)
+ .SetQueryParam("supplier_ext_id", request.SupplierExternalId);
+
+ return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+
+ ///
+ /// 异步调用 [GET] /v1/tp/poi/base/query/amap 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteOpenApiThirdPartyPOIBaseQueryAMapV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyPOIBaseQueryAMapV1Request 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
+ .CreateFlurlRequest(request, HttpMethod.Get, "v1", "tp", "poi", "base", "query", "amap")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "tp", "poi", "base", "query", "amap"))
+ .SetQueryParam("component_appid", request.ComponentAppId)
+ .SetQueryParam("component_access_token", request.ComponentAccessToken)
+ .SetQueryParam("amap_id", request.AMapId);
+
+ return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+ #endregion
+
+ #region Template
+ ///
+ /// 异步调用 [GET] /v1/tp/template/get_tpl_list 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteOpenApiThirdPartyTemplateGetTemplateListV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyTemplateGetTemplateListV1Request 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
+ .CreateFlurlRequest(request, HttpMethod.Get, "v1", "tp", "template", "get_tpl_list")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "tp", "template", "get_tpl_list"))
+ .SetQueryParam("component_appid", request.ComponentAppId)
+ .SetQueryParam("component_access_token", request.ComponentAccessToken);
+
+ return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+
+ ///
+ /// 异步调用 [GET] /v1/tp/template/get_draft_list 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ [Obsolete("相关接口或字段于 2022-12-28 下线。")]
+ public static async Task ExecuteOpenApiThirdPartyTemplateGetDraftListV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyTemplateGetDraftListV1Request 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
+ .CreateFlurlRequest(request, HttpMethod.Get, "v1", "tp", "template", "get_draft_list")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "tp", "template", "get_draft_list"))
+ .SetQueryParam("component_appid", request.ComponentAppId)
+ .SetQueryParam("component_access_token", request.ComponentAccessToken);
+
+ return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+
+ ///
+ /// 异步调用 [GET] /v1/tp/template/get_tpl_app_list 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteOpenApiThirdPartyTemplateGetTemplateAppListV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyTemplateGetTemplateAppListV1Request 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
+ .CreateFlurlRequest(request, HttpMethod.Get, "v1", "tp", "template", "get_tpl_app_list")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "tp", "template", "get_tpl_app_list"))
+ .SetQueryParam("component_appid", request.ComponentAppId)
+ .SetQueryParam("component_access_token", request.ComponentAccessToken);
+
+ return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+
+ ///
+ /// 异步调用 [POST] /v1/tp/template/add_tpl 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteOpenApiThirdPartyTemplateAddTemplateV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyTemplateAddTemplateV1Request 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
+ .CreateFlurlRequest(request, HttpMethod.Post, "v1", "tp", "template", "add_tpl")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "tp", "template", "add_tpl"))
+ .SetQueryParam("component_appid", request.ComponentAppId)
+ .SetQueryParam("component_access_token", request.ComponentAccessToken);
+
+ return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+
+ ///
+ /// 异步调用 [POST] /v1/tp/template/del_tpl 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteOpenApiThirdPartyTemplateDeleteTemplateV1Async(this DouyinMicroAppOpenApiClient client, Models.OpenApiThirdPartyTemplateDeleteTemplateV1Request 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
+ .CreateFlurlRequest(request, HttpMethod.Post, "v1", "tp", "template", "del_tpl")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v1", "tp", "template", "del_tpl"))
+ .SetQueryParam("component_appid", request.ComponentAppId)
+ .SetQueryParam("component_access_token", request.ComponentAccessToken);
+
+ return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+ #endregion
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Extensions/DouyinMicroAppOpenApiClientParameterExtensions.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Extensions/DouyinMicroAppOpenApiClientParameterExtensions.cs
index e0e6ce14..1cd53b89 100644
--- a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Extensions/DouyinMicroAppOpenApiClientParameterExtensions.cs
+++ b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Extensions/DouyinMicroAppOpenApiClientParameterExtensions.cs
@@ -4,6 +4,8 @@ namespace SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi
{
public static class DouyinMicroAppOpenApiClientParameterExtensions
{
+ private const string BASE_URL = "https://open.microapp.bytedance.com/openapi";
+
///
/// 生成第三方应用服务商授权 URL。
///
@@ -17,7 +19,7 @@ public static class DouyinMicroAppOpenApiClientParameterExtensions
///
public static string GenerateParameterizedUrlForOpenComponentThirdPartyAuthorization(this DouyinMicroAppOpenApiClient client, string preAuthCode, string redirectUrl)
{
- return new Url(DouyinMicroAppOpenApiEndpoints.DEFAULT)
+ return new Url(BASE_URL)
.AppendPathSegments("mappconsole", "tp", "authorization")
.SetQueryParam("component_appid", client.Credentials.ComponentAppId)
.SetQueryParam("pre_auth_code", preAuthCode)
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Auth/OpenApiAuthGenerateLinkV2Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Auth/OpenApiAuthGenerateLinkV2Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Auth/OpenApiAuthGenerateLinkV2Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Auth/OpenApiAuthGenerateLinkV2Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Auth/OpenApiAuthGenerateLinkV2Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Auth/OpenApiAuthGenerateLinkV2Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Auth/OpenApiAuthGenerateLinkV2Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Auth/OpenApiAuthGenerateLinkV2Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Auth/OpenApiAuthPreAuthCodeV2Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Auth/OpenApiAuthPreAuthCodeV2Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Auth/OpenApiAuthPreAuthCodeV2Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Auth/OpenApiAuthPreAuthCodeV2Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Auth/OpenApiAuthPreAuthCodeV2Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Auth/OpenApiAuthPreAuthCodeV2Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Auth/OpenApiAuthPreAuthCodeV2Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Auth/OpenApiAuthPreAuthCodeV2Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Auth/OpenApiAuthRetrieveV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Auth/OpenApiAuthRetrieveV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Auth/OpenApiAuthRetrieveV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Auth/OpenApiAuthRetrieveV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Auth/OpenApiAuthRetrieveV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Auth/OpenApiAuthRetrieveV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Auth/OpenApiAuthRetrieveV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Auth/OpenApiAuthRetrieveV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Auth/OpenApiAuthThirdPartyTokenV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Auth/OpenApiAuthThirdPartyTokenV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Auth/OpenApiAuthThirdPartyTokenV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Auth/OpenApiAuthThirdPartyTokenV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Auth/OpenApiAuthThirdPartyTokenV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Auth/OpenApiAuthThirdPartyTokenV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Auth/OpenApiAuthThirdPartyTokenV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Auth/OpenApiAuthThirdPartyTokenV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/Category/OpenApiMicroAppAppAddCategoriesV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/Category/OpenApiMicroAppAppAddCategoriesV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/Category/OpenApiMicroAppAppAddCategoriesV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/Category/OpenApiMicroAppAppAddCategoriesV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/Category/OpenApiMicroAppAppAddCategoriesV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/Category/OpenApiMicroAppAppAddCategoriesV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/Category/OpenApiMicroAppAppAddCategoriesV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/Category/OpenApiMicroAppAppAddCategoriesV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/Category/OpenApiMicroAppAppAllCategoriesV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/Category/OpenApiMicroAppAppAllCategoriesV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/Category/OpenApiMicroAppAppAllCategoriesV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/Category/OpenApiMicroAppAppAllCategoriesV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/Category/OpenApiMicroAppAppAllCategoriesV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/Category/OpenApiMicroAppAppAllCategoriesV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/Category/OpenApiMicroAppAppAllCategoriesV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/Category/OpenApiMicroAppAppAllCategoriesV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/Category/OpenApiMicroAppAppCategoriesV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/Category/OpenApiMicroAppAppCategoriesV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/Category/OpenApiMicroAppAppCategoriesV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/Category/OpenApiMicroAppAppCategoriesV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/Category/OpenApiMicroAppAppCategoriesV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/Category/OpenApiMicroAppAppCategoriesV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/Category/OpenApiMicroAppAppCategoriesV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/Category/OpenApiMicroAppAppCategoriesV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/Category/OpenApiMicroAppAppDeleteCategoriesV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/Category/OpenApiMicroAppAppDeleteCategoriesV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/Category/OpenApiMicroAppAppDeleteCategoriesV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/Category/OpenApiMicroAppAppDeleteCategoriesV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/Category/OpenApiMicroAppAppDeleteCategoriesV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/Category/OpenApiMicroAppAppDeleteCategoriesV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/Category/OpenApiMicroAppAppDeleteCategoriesV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/Category/OpenApiMicroAppAppDeleteCategoriesV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/Category/OpenApiMicroAppAppSupplyCategoriesV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/Category/OpenApiMicroAppAppSupplyCategoriesV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/Category/OpenApiMicroAppAppSupplyCategoriesV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/Category/OpenApiMicroAppAppSupplyCategoriesV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/Category/OpenApiMicroAppAppSupplyCategoriesV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/Category/OpenApiMicroAppAppSupplyCategoriesV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/Category/OpenApiMicroAppAppSupplyCategoriesV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/Category/OpenApiMicroAppAppSupplyCategoriesV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppCheckAppNameV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppCheckAppNameV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppCheckAppNameV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppCheckAppNameV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppCheckAppNameV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppCheckAppNameV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppCheckAppNameV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppCheckAppNameV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppCreditScoreV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppCreditScoreV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppCreditScoreV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppCreditScoreV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppCreditScoreV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppCreditScoreV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppCreditScoreV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppCreditScoreV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppInfoV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppInfoV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppInfoV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppInfoV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppInfoV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppInfoV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppInfoV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppInfoV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppModifyAppIconV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppModifyAppIconV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppModifyAppIconV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppModifyAppIconV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppModifyAppIconV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppModifyAppIconV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppModifyAppIconV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppModifyAppIconV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppModifyAppIntroductionV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppModifyAppIntroductionV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppModifyAppIntroductionV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppModifyAppIntroductionV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppModifyAppIntroductionV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppModifyAppIntroductionV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppModifyAppIntroductionV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppModifyAppIntroductionV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppModifyAppNameV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppModifyAppNameV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppModifyAppNameV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppModifyAppNameV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppModifyAppNameV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppModifyAppNameV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppModifyAppNameV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppModifyAppNameV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppModifyServerDomainV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppModifyServerDomainV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppModifyServerDomainV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppModifyServerDomainV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppModifyServerDomainV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppModifyServerDomainV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppModifyServerDomainV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppModifyServerDomainV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppModifyWebviewDomainV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppModifyWebviewDomainV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppModifyWebviewDomainV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppModifyWebviewDomainV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppModifyWebviewDomainV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppModifyWebviewDomainV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppModifyWebviewDomainV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppModifyWebviewDomainV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppQrcodeV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppQrcodeV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppQrcodeV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppQrcodeV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppQrcodeV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppQrcodeV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppQrcodeV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppQrcodeV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppQualityRatingV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppQualityRatingV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppQualityRatingV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppQualityRatingV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppQualityRatingV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppQualityRatingV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/App/OpenApiMicroAppAppQualityRatingV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/App/OpenApiMicroAppAppQualityRatingV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/OpenApiMicroAppCode2SessionV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/OpenApiMicroAppCode2SessionV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/OpenApiMicroAppCode2SessionV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/OpenApiMicroAppCode2SessionV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/OpenApiMicroAppCode2SessionV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/OpenApiMicroAppCode2SessionV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/OpenApiMicroAppCode2SessionV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/OpenApiMicroAppCode2SessionV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/OpenApiMicroAppUploadMaterialV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/OpenApiMicroAppUploadMaterialV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/OpenApiMicroAppUploadMaterialV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/OpenApiMicroAppUploadMaterialV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/OpenApiMicroAppUploadMaterialV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/OpenApiMicroAppUploadMaterialV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/OpenApiMicroAppUploadMaterialV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/OpenApiMicroAppUploadMaterialV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationLiveApplicationStatusV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationLiveApplicationStatusV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationLiveApplicationStatusV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationLiveApplicationStatusV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationLiveApplicationStatusV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationLiveApplicationStatusV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationLiveApplicationStatusV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationLiveApplicationStatusV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationLiveApplicationV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationLiveApplicationV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationLiveApplicationV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationLiveApplicationV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationLiveApplicationV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationLiveApplicationV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationLiveApplicationV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationLiveApplicationV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationPhoneNumberApplicationStatusV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationPhoneNumberApplicationStatusV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationPhoneNumberApplicationStatusV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationPhoneNumberApplicationStatusV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationPhoneNumberApplicationStatusV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationPhoneNumberApplicationStatusV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationPhoneNumberApplicationStatusV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationPhoneNumberApplicationStatusV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationPhoneNumberApplicationV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationPhoneNumberApplicationV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationPhoneNumberApplicationV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationPhoneNumberApplicationV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationPhoneNumberApplicationV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationPhoneNumberApplicationV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationPhoneNumberApplicationV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationPhoneNumberApplicationV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationVideoApplicationStatusV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationVideoApplicationStatusV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationVideoApplicationStatusV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationVideoApplicationStatusV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationVideoApplicationStatusV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationVideoApplicationStatusV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationVideoApplicationStatusV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationVideoApplicationStatusV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationVideoApplicationV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationVideoApplicationV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationVideoApplicationV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationVideoApplicationV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationVideoApplicationV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationVideoApplicationV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/Application/OpenApiMicroAppOperationVideoApplicationV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/Application/OpenApiMicroAppOperationVideoApplicationV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationAddShareTemplateV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationAddShareTemplateV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationAddShareTemplateV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationAddShareTemplateV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationAddShareTemplateV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationAddShareTemplateV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationAddShareTemplateV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationAddShareTemplateV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationDeleteShareTemplateV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationDeleteShareTemplateV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationDeleteShareTemplateV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationDeleteShareTemplateV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationDeleteShareTemplateV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationDeleteShareTemplateV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationDeleteShareTemplateV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationDeleteShareTemplateV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationModifyShareTemplateV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationModifyShareTemplateV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationModifyShareTemplateV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationModifyShareTemplateV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationModifyShareTemplateV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationModifyShareTemplateV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationModifyShareTemplateV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationModifyShareTemplateV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationSetDefaultShareTemplateV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationSetDefaultShareTemplateV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationSetDefaultShareTemplateV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationSetDefaultShareTemplateV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationSetDefaultShareTemplateV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationSetDefaultShareTemplateV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationSetDefaultShareTemplateV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationSetDefaultShareTemplateV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationShareTemplateListV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationShareTemplateListV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationShareTemplateListV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationShareTemplateListV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationShareTemplateListV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationShareTemplateListV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationShareTemplateListV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShareTemplate/OpenApiMicroAppOperationShareTemplateListV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShopMaterial/OpenApiMicroAppOperationAddShopMaterialV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShopMaterial/OpenApiMicroAppOperationAddShopMaterialV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShopMaterial/OpenApiMicroAppOperationAddShopMaterialV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShopMaterial/OpenApiMicroAppOperationAddShopMaterialV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShopMaterial/OpenApiMicroAppOperationAddShopMaterialV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShopMaterial/OpenApiMicroAppOperationAddShopMaterialV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShopMaterial/OpenApiMicroAppOperationAddShopMaterialV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShopMaterial/OpenApiMicroAppOperationAddShopMaterialV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShopMaterial/OpenApiMicroAppOperationQueryShopMaterialV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShopMaterial/OpenApiMicroAppOperationQueryShopMaterialV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShopMaterial/OpenApiMicroAppOperationQueryShopMaterialV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShopMaterial/OpenApiMicroAppOperationQueryShopMaterialV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShopMaterial/OpenApiMicroAppOperationQueryShopMaterialV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShopMaterial/OpenApiMicroAppOperationQueryShopMaterialV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Operation/ShopMaterial/OpenApiMicroAppOperationQueryShopMaterialV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Operation/ShopMaterial/OpenApiMicroAppOperationQueryShopMaterialV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageAuditHostsV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageAuditHostsV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageAuditHostsV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageAuditHostsV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageAuditHostsV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageAuditHostsV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageAuditHostsV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageAuditHostsV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageAuditV2Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageAuditV2Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageAuditV2Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageAuditV2Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageAuditV2Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageAuditV2Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageAuditV2Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageAuditV2Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageReleaseV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageReleaseV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageReleaseV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageReleaseV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageReleaseV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageReleaseV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageReleaseV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageReleaseV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageRevokeAuditV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageRevokeAuditV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageRevokeAuditV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageRevokeAuditV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageRevokeAuditV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageRevokeAuditV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageRevokeAuditV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageRevokeAuditV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageRollbackV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageRollbackV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageRollbackV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageRollbackV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageRollbackV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageRollbackV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageRollbackV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageRollbackV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageUploadV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageUploadV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageUploadV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageUploadV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageUploadV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageUploadV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageUploadV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageUploadV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageVersionsV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageVersionsV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageVersionsV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageVersionsV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageVersionsV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageVersionsV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/MicroApp/Package/OpenApiMicroAppPackageVersionsV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/MicroApp/Package/OpenApiMicroAppPackageVersionsV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/OAuth/OpenApiOAuthTokenV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/OAuth/OpenApiOAuthTokenV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/OAuth/OpenApiOAuthTokenV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/OAuth/OpenApiOAuthTokenV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/OAuth/OpenApiOAuthTokenV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/OAuth/OpenApiOAuthTokenV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/OAuth/OpenApiOAuthTokenV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/OAuth/OpenApiOAuthTokenV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Settle/OpenApiSettleApplyV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Settle/OpenApiSettleApplyV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Settle/OpenApiSettleApplyV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Settle/OpenApiSettleApplyV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Settle/OpenApiSettleApplyV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Settle/OpenApiSettleApplyV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Settle/OpenApiSettleApplyV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Settle/OpenApiSettleApplyV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Settle/OpenApiSettleGetApplyStatusV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Settle/OpenApiSettleGetApplyStatusV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Settle/OpenApiSettleGetApplyStatusV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Settle/OpenApiSettleGetApplyStatusV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Settle/OpenApiSettleGetApplyStatusV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Settle/OpenApiSettleGetApplyStatusV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Settle/OpenApiSettleGetApplyStatusV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Settle/OpenApiSettleGetApplyStatusV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Settle/OpenApiSettlePreCheckV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Settle/OpenApiSettlePreCheckV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Settle/OpenApiSettlePreCheckV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Settle/OpenApiSettlePreCheckV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Settle/OpenApiSettlePreCheckV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Settle/OpenApiSettlePreCheckV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/Settle/OpenApiSettlePreCheckV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/Settle/OpenApiSettlePreCheckV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Domain/OpenApiThirdPartyDownloadWebviewFileV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Domain/OpenApiThirdPartyDownloadWebviewFileV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Domain/OpenApiThirdPartyDownloadWebviewFileV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Domain/OpenApiThirdPartyDownloadWebviewFileV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Domain/OpenApiThirdPartyDownloadWebviewFileV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Domain/OpenApiThirdPartyDownloadWebviewFileV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Domain/OpenApiThirdPartyDownloadWebviewFileV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Domain/OpenApiThirdPartyDownloadWebviewFileV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/OpenApiThirdPartyAuthAppListV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/OpenApiThirdPartyAuthAppListV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/OpenApiThirdPartyAuthAppListV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/OpenApiThirdPartyAuthAppListV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/OpenApiThirdPartyAuthAppListV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/OpenApiThirdPartyAuthAppListV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/OpenApiThirdPartyAuthAppListV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/OpenApiThirdPartyAuthAppListV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/OpenApiThirdPartyUploadPictureMaterialV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/OpenApiThirdPartyUploadPictureMaterialV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/OpenApiThirdPartyUploadPictureMaterialV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/OpenApiThirdPartyUploadPictureMaterialV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/OpenApiThirdPartyUploadPictureMaterialV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/OpenApiThirdPartyUploadPictureMaterialV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/OpenApiThirdPartyUploadPictureMaterialV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/OpenApiThirdPartyUploadPictureMaterialV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOIBaseQueryAMapV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOIBaseQueryAMapV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOIBaseQueryAMapV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOIBaseQueryAMapV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOIBaseQueryAMapV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOIBaseQueryAMapV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOIBaseQueryAMapV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOIBaseQueryAMapV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOISupplierMatchV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOISupplierMatchV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOISupplierMatchV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOISupplierMatchV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOISupplierMatchV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOISupplierMatchV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOISupplierMatchV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOISupplierMatchV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryMatchTaskV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryMatchTaskV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryMatchTaskV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryMatchTaskV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryMatchTaskV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryMatchTaskV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryMatchTaskV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryMatchTaskV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryMatchV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryMatchV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryMatchV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryMatchV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryMatchV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryMatchV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryMatchV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryMatchV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOISupplierQueryV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOISupplierSyncV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOISupplierSyncV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOISupplierSyncV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOISupplierSyncV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOISupplierSyncV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOISupplierSyncV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/POI/OpenApiThirdPartyPOISupplierSyncV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/POI/OpenApiThirdPartyPOISupplierSyncV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Template/OpenApiThirdPartyTemplateAddTemplateV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Template/OpenApiThirdPartyTemplateAddTemplateV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Template/OpenApiThirdPartyTemplateAddTemplateV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Template/OpenApiThirdPartyTemplateAddTemplateV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Template/OpenApiThirdPartyTemplateAddTemplateV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Template/OpenApiThirdPartyTemplateAddTemplateV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Template/OpenApiThirdPartyTemplateAddTemplateV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Template/OpenApiThirdPartyTemplateAddTemplateV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Template/OpenApiThirdPartyTemplateDeleteTemplateV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Template/OpenApiThirdPartyTemplateDeleteTemplateV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Template/OpenApiThirdPartyTemplateDeleteTemplateV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Template/OpenApiThirdPartyTemplateDeleteTemplateV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Template/OpenApiThirdPartyTemplateDeleteTemplateV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Template/OpenApiThirdPartyTemplateDeleteTemplateV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Template/OpenApiThirdPartyTemplateDeleteTemplateV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Template/OpenApiThirdPartyTemplateDeleteTemplateV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Template/OpenApiThirdPartyTemplateGetDraftListV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Template/OpenApiThirdPartyTemplateGetDraftListV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Template/OpenApiThirdPartyTemplateGetDraftListV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Template/OpenApiThirdPartyTemplateGetDraftListV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Template/OpenApiThirdPartyTemplateGetDraftListV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Template/OpenApiThirdPartyTemplateGetDraftListV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Template/OpenApiThirdPartyTemplateGetDraftListV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Template/OpenApiThirdPartyTemplateGetDraftListV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Template/OpenApiThirdPartyTemplateGetTemplateAppListV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Template/OpenApiThirdPartyTemplateGetTemplateAppListV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Template/OpenApiThirdPartyTemplateGetTemplateAppListV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Template/OpenApiThirdPartyTemplateGetTemplateAppListV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Template/OpenApiThirdPartyTemplateGetTemplateAppListV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Template/OpenApiThirdPartyTemplateGetTemplateAppListV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Template/OpenApiThirdPartyTemplateGetTemplateAppListV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Template/OpenApiThirdPartyTemplateGetTemplateAppListV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Template/OpenApiThirdPartyTemplateGetTemplateListV1Request.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Template/OpenApiThirdPartyTemplateGetTemplateListV1Request.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Template/OpenApiThirdPartyTemplateGetTemplateListV1Request.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Template/OpenApiThirdPartyTemplateGetTemplateListV1Request.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Template/OpenApiThirdPartyTemplateGetTemplateListV1Response.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Template/OpenApiThirdPartyTemplateGetTemplateListV1Response.cs
similarity index 100%
rename from src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/ThirdParty/Template/OpenApiThirdPartyTemplateGetTemplateListV1Response.cs
rename to src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/OpenApi/Models/_Legacy/ThirdParty/Template/OpenApiThirdPartyTemplateGetTemplateListV1Response.cs
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/ProductApi/DouyinMicroAppProductApiClientOptions.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/ProductApi/DouyinMicroAppProductApiClientOptions.cs
index 00c89687..d898f8ef 100644
--- a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/ProductApi/DouyinMicroAppProductApiClientOptions.cs
+++ b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/ProductApi/DouyinMicroAppProductApiClientOptions.cs
@@ -12,7 +12,7 @@ public class DouyinMicroAppProductApiClientOptions
public int Timeout { get; set; } = 30 * 1000;
///
- /// 获取或设置抖音小程序泛知识课程库 API 域名。
+ /// 获取或设置抖音小程序泛知识课程库 API 入口点。
/// 默认值:
///
public string Endpoints { get; set; } = DouyinMicroAppProductApiEndpoints.DEFAULT;
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/RoleApi/DouyinMicroAppRoleApiClientOptions.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/RoleApi/DouyinMicroAppRoleApiClientOptions.cs
index ed36ff13..1260d0ae 100644
--- a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/RoleApi/DouyinMicroAppRoleApiClientOptions.cs
+++ b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/ExtendedSDK/RoleApi/DouyinMicroAppRoleApiClientOptions.cs
@@ -12,7 +12,7 @@ public class DouyinMicroAppRoleApiClientOptions
public int Timeout { get; set; } = 30 * 1000;
///
- /// 获取或设置抖音小程序泛知识角色系统 API 域名。
+ /// 获取或设置抖音小程序泛知识角色系统 API 入口点。
/// 默认值:
///
public string Endpoints { get; set; } = DouyinMicroAppRoleApiEndpoints.DEFAULT;
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyAppsECPayExtensions.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyAppsECPayExtensions.cs
index 9128083d..1be12990 100644
--- a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyAppsECPayExtensions.cs
+++ b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyAppsECPayExtensions.cs
@@ -98,7 +98,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "bills")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/bills")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "bills"))
.SetQueryParam("app_id", request.AppId)
.SetQueryParam("merchant_id", request.MerchantId)
.SetQueryParam("bill_date", request.DateString)
@@ -144,7 +144,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "fund", "bills")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/fund/bills")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "fund", "bills"))
.SetQueryParam("app_id", request.AppId)
.SetQueryParam("merchant_id", request.MerchantId)
.SetQueryParam("bill_date", request.DateString)
@@ -185,7 +185,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "ecpay", "v1", "create_order")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/ecpay/v1/create_order");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "ecpay", "v1", "create_order"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -214,7 +214,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "ecpay", "v1", "query_order")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/ecpay/v1/query_order");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "ecpay", "v1", "query_order"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -243,7 +243,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "ecpay", "v1", "create_refund")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/ecpay/v1/create_refund");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "ecpay", "v1", "create_refund"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -272,7 +272,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "ecpay", "v1", "query_refund")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/ecpay/v1/query_refund");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "ecpay", "v1", "query_refund"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -301,7 +301,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "ecpay", "v1", "settle")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/ecpay/v1/settle");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "ecpay", "v1", "settle"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -330,7 +330,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "ecpay", "v1", "query_settle")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/ecpay/v1/query_settle");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "ecpay", "v1", "query_settle"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -359,7 +359,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "ecpay", "v1", "create_return")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/ecpay/v1/create_return");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "ecpay", "v1", "create_return"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -388,7 +388,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "ecpay", "v1", "query_return")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/ecpay/v1/query_return");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "ecpay", "v1", "query_return"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -417,7 +417,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "ecpay", "v1", "query_platform_order")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/ecpay/v1/query_platform_order");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "ecpay", "v1", "query_platform_order"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -443,7 +443,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "ecpay", "saas", "create_merchant")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/ecpay/saas/create_merchant");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "ecpay", "saas", "create_merchant"));
if (request.Signature is null)
request.Signature = GenerateRequestSignature(client, request);
@@ -469,7 +469,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "ecpay", "saas", "image_upload")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/ecpay/saas/image_upload");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "ecpay", "saas", "image_upload"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -495,7 +495,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "ecpay", "saas", "query_merchant_status")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/ecpay/saas/query_merchant_status");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "ecpay", "saas", "query_merchant_status"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -524,7 +524,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "ecpay", "saas", "add_merchant")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/ecpay/saas/add_merchant");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "ecpay", "saas", "add_merchant"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -554,7 +554,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "ecpay", "saas", "get_app_merchant")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/ecpay/saas/get_app_merchant");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "ecpay", "saas", "get_app_merchant"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -581,7 +581,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "ecpay", "saas", "app_add_sub_merchant")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/ecpay/saas/app_add_sub_merchant");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "ecpay", "saas", "app_add_sub_merchant"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -611,7 +611,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "ecpay", "saas", "add_sub_merchant")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/ecpay/saas/add_sub_merchant");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "ecpay", "saas", "add_sub_merchant"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -639,7 +639,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "ecpay", "saas", "query_merchant_balance")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/ecpay/saas/query_merchant_balance");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "ecpay", "saas", "query_merchant_balance"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -665,7 +665,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "ecpay", "saas", "merchant_withdraw")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/ecpay/saas/merchant_withdraw");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "ecpay", "saas", "merchant_withdraw"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -691,7 +691,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "ecpay", "saas", "query_withdraw_order")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/ecpay/saas/query_withdraw_order");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "ecpay", "saas", "query_withdraw_order"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyAppsExtensions.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyAppsExtensions.cs
index f2859ac1..bda7652d 100644
--- a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyAppsExtensions.cs
+++ b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyAppsExtensions.cs
@@ -36,7 +36,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v2", "token")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v2/token");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v2", "token"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -67,7 +67,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v2", "jscode2session")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v2/jscode2session");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v2", "jscode2session"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -94,7 +94,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v1", "capacity", "upload_material")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/upload_material")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "upload_material"))
.WithHeader("access-token", request.AccessToken);
using var httpContent = Utilities.FileHttpContentBuilder.Build(fileName: request.MaterialFileName, fileBytes: request.MaterialFileBytes, fileContentType: "image/jpeg", formDataName: "material_file");
@@ -123,7 +123,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "capacity", "query_aweme_permission_list")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/query_aweme_permission_list")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "query_aweme_permission_list"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -148,7 +148,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v1", "capacity", "apply_aweme_permission")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/apply_aweme_permission")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "apply_aweme_permission"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -173,7 +173,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "capacity", "query_scope_quota_detail")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/query_scope_quota_detail")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "query_scope_quota_detail"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("permission_key", request.PermissionKey);
@@ -199,7 +199,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v1", "capacity", "apply_scope_quota")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/apply_scope_quota")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "apply_scope_quota"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -225,7 +225,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v1", "capacity", "create_clue_component_info")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/create_clue_component_info")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "create_clue_component_info"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -249,7 +249,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "capacity", "query_clue_component_info")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/query_clue_component_info")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "query_clue_component_info"))
.WithHeader("access-token", request.AccessToken);
if (request.PageNumber is not null)
@@ -279,7 +279,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v1", "capacity", "update_clue_component_info")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/update_clue_component_info")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "update_clue_component_info"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -303,7 +303,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Delete, "apps", "v1", "capacity", "delete_clue_component_info")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/delete_clue_component_info")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "delete_clue_component_info"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -330,7 +330,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v1", "capacity", "bind_aweme_user")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/bind_aweme_user")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "bind_aweme_user"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -355,7 +355,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v1", "capacity", "unbind_aweme_user_bind")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/unbind_aweme_user_bind")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "unbind_aweme_user_bind"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -380,7 +380,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "capacity", "get_aweme_user_bind_qrcode")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/get_aweme_user_bind_qrcode")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "get_aweme_user_bind_qrcode"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("type", request.BindType);
@@ -406,7 +406,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "capacity", "query_aweme_user_bind_list")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/query_aweme_user_bind_list")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "query_aweme_user_bind_list"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("type", request.BindType)
.SetQueryParam("page_num", request.PageNumber)
@@ -440,7 +440,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v1", "capacity", "apply_capacity")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/apply_capacity")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "apply_capacity"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -469,7 +469,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "capacity", "query_apply_status")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/query_apply_status")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "query_apply_status"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("capacity_key", request.CapacityKey);
@@ -495,7 +495,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v1", "capacity", "bind_self_mount_user")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/bind_self_mount_user")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "bind_self_mount_user"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -520,7 +520,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v1", "capacity", "unbind_self_mount_user")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/unbind_self_mount_user")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "unbind_self_mount_user"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -545,7 +545,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "capacity", "get_self_mount_bind_qrcode")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/get_self_mount_bind_qrcode")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "get_self_mount_bind_qrcode"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("capacity_key", request.CapacityKey);
@@ -571,7 +571,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "capacity", "query_self_mount_user_list")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/query_self_mount_user_list")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "query_self_mount_user_list"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("capacity_key", request.CapacityKey)
.SetQueryParam("page_num", request.PageNumber)
@@ -600,7 +600,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "capacity", "query_capcut_info")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/query_capcut_info")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "query_capcut_info"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -625,7 +625,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "capacity", "query_capcut_template_list")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/query_capcut_template_list")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "query_capcut_template_list"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("page_num", request.PageNumber)
.SetQueryParam("page_size", request.PageSize);
@@ -652,7 +652,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v1", "capacity", "update_capcut_template_status")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/update_capcut_template_status")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "update_capcut_template_status"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -680,7 +680,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "capacity", "query_simple_qr_bind_list")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/query_simple_qr_bind_list")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "query_simple_qr_bind_list"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("page_num", request.PageNumber)
.SetQueryParam("page_size", request.PageSize);
@@ -707,7 +707,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v1", "capacity", "add_simple_qr_bind")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/add_simple_qr_bind")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "add_simple_qr_bind"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -732,7 +732,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v1", "capacity", "update_simple_qr_bind")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/update_simple_qr_bind")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "update_simple_qr_bind"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -757,7 +757,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v1", "capacity", "update_simple_qr_bind_status")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/update_simple_qr_bind_status")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "update_simple_qr_bind_status"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -782,7 +782,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v1", "capacity", "delete_simple_qr_bind")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/delete_simple_qr_bind")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "delete_simple_qr_bind"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -809,7 +809,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "capacity", "query_subscribe_notification_tpl_list")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/query_subscribe_notification_tpl_list")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "query_subscribe_notification_tpl_list"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("page_num", request.PageNumber)
.SetQueryParam("page_size", request.PageSize)
@@ -844,7 +844,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "capacity", "query_app_subscribe_notification_tpl")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/query_app_subscribe_notification_tpl")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "query_app_subscribe_notification_tpl"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("page_num", request.PageNumber)
.SetQueryParam("page_size", request.PageSize)
@@ -875,7 +875,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "capacity", "query_created_subscribe_notification_tpl_list")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/query_created_subscribe_notification_tpl_list")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "query_created_subscribe_notification_tpl_list"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("page_num", request.PageNumber)
.SetQueryParam("page_size", request.PageSize);
@@ -905,7 +905,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v1", "capacity", "add_app_subscribe_notification_tpl")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/add_app_subscribe_notification_tpl")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "add_app_subscribe_notification_tpl"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -930,7 +930,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v1", "capacity", "modify_app_subscribe_notification_tpl")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/modify_app_subscribe_notification_tpl")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "modify_app_subscribe_notification_tpl"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -955,7 +955,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v1", "capacity", "delete_app_subscribe_notification_tpl")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/delete_app_subscribe_notification_tpl")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "delete_app_subscribe_notification_tpl"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -980,7 +980,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v1", "capacity", "create_subscribe_notification_tpl")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/create_subscribe_notification_tpl")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "create_subscribe_notification_tpl"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -1007,7 +1007,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "capacity", "query_traffic_permission_status")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/query_traffic_permission_status")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "query_traffic_permission_status"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -1032,7 +1032,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v1", "capacity", "open_traffic_permission")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/open_traffic_permission")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "open_traffic_permission"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -1057,7 +1057,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "capacity", "query_ad_placement_list")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/query_ad_placement_list")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "query_ad_placement_list"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -1082,7 +1082,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v1", "capacity", "add_ad_placement")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/add_ad_placement")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "add_ad_placement"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -1107,7 +1107,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v1", "capacity", "update_ad_placement_status")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/update_ad_placement_status")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "update_ad_placement_status"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -1131,7 +1131,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "capacity", "query_ad_income")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/query_ad_income")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "query_ad_income"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("start_date", request.StartDateString)
.SetQueryParam("end_date", request.EndDateString);
@@ -1160,7 +1160,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "capacity", "query_ad_settlement_list")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/capacity/query_ad_settlement_list")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "capacity", "query_ad_settlement_list"))
.WithHeader("access-token", request.AccessToken);
if (request.PeriodString is not null)
@@ -1197,7 +1197,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "censor", "image")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/censor/image");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "censor", "image"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -1225,7 +1225,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "customer_service", "url")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/customer_service/url")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "customer_service", "url"))
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("appid", request.AppId)
.SetQueryParam("openid", request.OpenId)
@@ -1259,7 +1259,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "chat", "customer_service_url")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/chat/customer_service_url")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "chat", "customer_service_url"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("appid", request.AppId)
.SetQueryParam("openid", request.OpenId)
@@ -1297,7 +1297,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "data_analysis", "query_deal_overview_data")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/data_analysis/query_deal_overview_data")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "data_analysis", "query_deal_overview_data"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("start_time", request.StartTimestamp)
.SetQueryParam("end_time", request.EndTimestamp);
@@ -1330,7 +1330,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "data_analysis", "query_video_deal_data")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/data_analysis/query_video_deal_data")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "data_analysis", "query_video_deal_data"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("start_time", request.StartTimestamp)
.SetQueryParam("end_time", request.EndTimestamp);
@@ -1360,7 +1360,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "data_analysis", "query_live_room")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/data_analysis/query_live_room")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "data_analysis", "query_live_room"))
.WithHeader("access-token", request.AccessToken);
if (request.AnchorName is not null)
@@ -1388,7 +1388,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "data_analysis", "query_live_room_data")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/data_analysis/query_live_room_data")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "data_analysis", "query_live_room_data"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("live_room_id", request.LiveRoomId);
@@ -1414,7 +1414,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "data_analysis", "query_live_deal_data")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/data_analysis/query_live_deal_data")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "data_analysis", "query_live_deal_data"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("live_room_id", request.LiveRoomId);
@@ -1440,7 +1440,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "data_analysis", "query_product_deal_data")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/data_analysis/query_product_deal_data")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "data_analysis", "query_product_deal_data"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("start_time", request.StartTimestamp)
.SetQueryParam("end_time", request.EndTimestamp)
@@ -1474,7 +1474,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "data_analysis", "query_behavior_data")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/data_analysis/query_behavior_data")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "data_analysis", "query_behavior_data"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("start_time", request.StartTimestamp)
.SetQueryParam("end_time", request.EndTimestamp);
@@ -1510,7 +1510,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "data_analysis", "query_real_time_user_data")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/data_analysis/query_real_time_user_data")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "data_analysis", "query_real_time_user_data"))
.WithHeader("access-token", request.AccessToken);
if (request.HostName is not null)
@@ -1541,7 +1541,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "data_analysis", "query_retention_data")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/data_analysis/query_retention_data")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "data_analysis", "query_retention_data"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("start_time", request.StartTimestamp)
.SetQueryParam("end_time", request.EndTimestamp);
@@ -1580,7 +1580,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "data_analysis", "query_scene_data")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/data_analysis/query_scene_data")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "data_analysis", "query_scene_data"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("start_time", request.StartTimestamp)
.SetQueryParam("end_time", request.EndTimestamp);
@@ -1613,7 +1613,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "data_analysis", "query_user_portrait_data")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/data_analysis/query_user_portrait_data")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "data_analysis", "query_user_portrait_data"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("start_time", request.StartTimestamp)
.SetQueryParam("end_time", request.EndTimestamp);
@@ -1649,7 +1649,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "data_analysis", "query_client_data")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/data_analysis/query_client_data")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "data_analysis", "query_client_data"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("start_time", request.StartTimestamp)
.SetQueryParam("end_time", request.EndTimestamp);
@@ -1685,7 +1685,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Get, "apps", "v1", "data_analysis", "query_page_data")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/data_analysis/query_page_data")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "data_analysis", "query_page_data"))
.WithHeader("access-token", request.AccessToken)
.SetQueryParam("start_time", request.StartTimestamp)
.SetQueryParam("end_time", request.EndTimestamp);
@@ -1729,7 +1729,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "upload_live_image")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/upload_live_image")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "upload_live_image"))
.WithHeader("access-token", request.AccessToken);
using var httpContent = Utilities.FileHttpContentBuilder.Build(fileName: request.ImageFileName, fileBytes: request.ImageFileBytes, fileContentType: "image/jpeg", formDataName: "image");
@@ -1762,7 +1762,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "v1", "live", "set_black_white_list")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/v1/live/set_black_white_list")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "v1", "live", "set_black_white_list"))
.WithHeader("access-token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -1788,7 +1788,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "message", "custom", "send")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/message/custom/send")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "message", "custom", "send"))
.SetQueryParam("access_token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -1815,7 +1815,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "order", "v2", "push")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/order/v2/push");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "order", "v2", "push"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -1838,7 +1838,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "order", "delete")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/order/delete");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "order", "delete"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -1864,7 +1864,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "qrcode")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/qrcode");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "qrcode"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -1894,7 +1894,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "subscribe_notification", "developer", "v1", "notify")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/subscribe_notification/developer/v1/notify");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "subscribe_notification", "developer", "v1", "notify"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -1922,7 +1922,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "share_config")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/share_config");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "share_config"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -1951,7 +1951,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "taskbox", "add_task")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/taskbox/add_task");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "taskbox", "add_task"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -1978,7 +1978,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "taskbox", "update_task")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/taskbox/update_task");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "taskbox", "update_task"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -2005,7 +2005,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "taskbox", "update", "status")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/taskbox/update/status");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "taskbox", "update", "status"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -2032,7 +2032,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "taskbox", "query_app_task_id")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/taskbox/query_app_task_id");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "taskbox", "query_app_task_id"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -2059,7 +2059,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "taskbox", "query_task_video_data")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/taskbox/query_task_video_data");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "taskbox", "query_task_video_data"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -2085,7 +2085,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "taskbox", "update_orient_talents", "")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/taskbox/update_orient_talents");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "taskbox", "update_orient_talents", ""));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -2116,7 +2116,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "convert_video_id", "video_id_to_open_item_id")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/convert_video_id/video_id_to_open_item_id");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "convert_video_id", "video_id_to_open_item_id"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -2142,7 +2142,7 @@ public static class DouyinMicroAppClientExecuteLegacyAppsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "convert_video_id", "open_item_id_to_encrypt_id")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/convert_video_id/open_item_id_to_encrypt_id");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "convert_video_id", "open_item_id_to_encrypt_id"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyAppsGameExtensions.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyAppsGameExtensions.cs
index eecce9bf..ae69a911 100644
--- a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyAppsGameExtensions.cs
+++ b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyAppsGameExtensions.cs
@@ -5,6 +5,7 @@
using System.Threading;
using System.Threading.Tasks;
using System.Web;
+using Flurl;
using Flurl.Http;
namespace SKIT.FlurlHttpClient.ByteDance.MicroApp
@@ -66,7 +67,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "game", "wallet", "get_balance")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/game/wallet/get_balance");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "game", "wallet", "get_balance"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -98,7 +99,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "game", "wallet", "game_pay")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/game/wallet/game_pay");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "game", "wallet", "game_pay"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
@@ -130,7 +131,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "game", "wallet", "add_coin")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/game/wallet/add_coin");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "game", "wallet", "add_coin"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyAppsStorageExtensions.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyAppsStorageExtensions.cs
index aa6b507b..df9f6319 100644
--- a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyAppsStorageExtensions.cs
+++ b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyAppsStorageExtensions.cs
@@ -55,7 +55,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "set_user_storage")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/set_user_storage")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "set_user_storage"))
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("openid", request.OpenId)
.SetQueryParam("signature", request.Signature)
@@ -86,7 +86,7 @@ private static string GenerateRequestSignature(DouyinMicroAppClient cl
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "apps", "remove_user_storage")
- .WithUrl($"{client._BASEURL_LEGACY}/apps/remove_user_storage")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("apps", "remove_user_storage"))
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("openid", request.OpenId)
.SetQueryParam("signature", request.Signature)
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyCommentExtensions.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyCommentExtensions.cs
index 3da786bd..7fa0aa56 100644
--- a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyCommentExtensions.cs
+++ b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyCommentExtensions.cs
@@ -2,6 +2,7 @@
using System.Net.Http;
using System.Threading;
using System.Threading.Tasks;
+using Flurl;
using Flurl.Http;
namespace SKIT.FlurlHttpClient.ByteDance.MicroApp
@@ -29,7 +30,7 @@ public static class DouyinMicroAppClientExecuteLegacyCommentExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "comment", "open", "get")
- .WithUrl($"{client._BASEURL_LEGACY}/comment/open/get");
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("comment", "open", "get"));
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
}
diff --git a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyTagsExtensions.cs b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyTagsExtensions.cs
index 8c0c04a2..add9c7b6 100644
--- a/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyTagsExtensions.cs
+++ b/src/SKIT.FlurlHttpClient.ByteDance.MicroApp/Extensions/DouyinMicroAppClientExecuteLegacyTagsExtensions.cs
@@ -2,6 +2,7 @@
using System.Net.Http;
using System.Threading;
using System.Threading.Tasks;
+using Flurl;
using Flurl.Http;
namespace SKIT.FlurlHttpClient.ByteDance.MicroApp
@@ -27,7 +28,7 @@ public static class DouyinMicroAppClientExecuteLegacyTagsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v2", "tags", "text", "antidirt")
- .WithUrl($"{client._BASEURL_LEGACY}/v2/tags/text/antidirt")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v2", "tags", "text", "antidirt"))
.WithHeader("X-Token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
@@ -51,7 +52,7 @@ public static class DouyinMicroAppClientExecuteLegacyTagsExtensions
IFlurlRequest flurlReq = client
.CreateFlurlRequest(request, HttpMethod.Post, "v2", "tags", "image")
- .WithUrl($"{client._BASEURL_LEGACY}/v2/tags/image")
+ .WithUrl(url => new Url(client._BASEURL_LEGACY).AppendPathSegments("v2", "tags", "image"))
.WithHeader("X-Token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
diff --git a/test/SKIT.FlurlHttpClient.ByteDance.MicroApp.UnitTests/IMPORTANT_CodeAnalyzeTests.cs b/test/SKIT.FlurlHttpClient.ByteDance.MicroApp.UnitTests/IMPORTANT_CodeAnalyzeTests.cs
index 6bcba118..91fb0888 100644
--- a/test/SKIT.FlurlHttpClient.ByteDance.MicroApp.UnitTests/IMPORTANT_CodeAnalyzeTests.cs
+++ b/test/SKIT.FlurlHttpClient.ByteDance.MicroApp.UnitTests/IMPORTANT_CodeAnalyzeTests.cs
@@ -1,6 +1,11 @@
using System;
using System.IO;
+using System.Linq;
+using System.Net.Http;
using System.Reflection;
+using Microsoft.CodeAnalysis;
+using Microsoft.CodeAnalysis.CSharp;
+using Microsoft.CodeAnalysis.CSharp.Syntax;
using SKIT.FlurlHttpClient.Tools.CodeAnalyzer;
using Xunit;
@@ -21,241 +26,417 @@ public class CodeAnalyzeTests
public void CodeAnalyze()
{
Assert.Multiple(
- () => Assert.Null(Record.Exception(() =>
- {
- var options = new TypeDeclarationAnalyzerOptions()
- {
- SdkAssembly = Assembly.GetAssembly(typeof(DouyinMicroAppClient))!,
- SdkRequestModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.Models",
- SdkResponseModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.Models",
- SdkExecutingExtensionDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp",
- SdkWebhookEventDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.Events",
- IgnoreExecutingExtensionTypes = static type => type.Namespace!.Contains(".ExtendedSDK."),
- ThrowOnNotFoundRequestModelTypes = true,
- ThrowOnNotFoundResponseModelTypes = true,
- ThrowOnNotFoundExecutingExtensionTypes = true,
- ThrowOnNotFoundWebhookEventTypes = true
- };
- new TypeDeclarationAnalyzer(options).AssertNoIssues();
- })),
-
- () => Assert.Null(Record.Exception(() =>
+ CodeAnalyze_BaseSDK,
+ CodeAnalyze_ExtendedSDK_OpenApi,
+ CodeAnalyze_ExtendedSDK_ProductApi,
+ CodeAnalyze_ExtendedSDK_RoleApi,
+ CodeAnalyze_ExtendedSDK_Webcast
+ );
+ }
+
+ private void CodeAnalyze_BaseSDK()
+ {
+ Assert.Null(Record.Exception(() =>
+ {
+ var options = new TypeDeclarationAnalyzerOptions()
{
- string workdir = Environment.CurrentDirectory;
- string projdir = Path.Combine(workdir, "../../../../../");
+ SdkAssembly = Assembly.GetAssembly(typeof(DouyinMicroAppClient))!,
+ SdkRequestModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.Models",
+ SdkResponseModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.Models",
+ SdkExecutingExtensionDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp",
+ SdkWebhookEventDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.Events",
+ IgnoreExecutingExtensionTypes = static type => type.Namespace!.Contains(".ExtendedSDK."),
+ ThrowOnNotFoundRequestModelTypes = true,
+ ThrowOnNotFoundResponseModelTypes = true,
+ ThrowOnNotFoundExecutingExtensionTypes = true,
+ ThrowOnNotFoundWebhookEventTypes = true
+ };
+ new TypeDeclarationAnalyzer(options).AssertNoIssues();
+ }));
- var options = new SourceFileAnalyzerOptions()
- {
- SdkAssembly = Assembly.GetAssembly(typeof(DouyinMicroAppClient))!,
- SdkRequestModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.Models",
- SdkResponseModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.Models",
- SdkWebhookEventDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.Events",
- ProjectSourceRootDirectory = Path.Combine(projdir, "./src/SKIT.FlurlHttpClient.ByteDance.MicroApp/"),
- ProjectTestRootDirectory = Path.Combine(projdir, "./test/SKIT.FlurlHttpClient.ByteDance.MicroApp.UnitTests/"),
- ProjectTestRequestModelSerializationSampleSubDirectory = "ModelSamples/_/",
- ProjectTestResponseModelSerializationSampleSubDirectory = "ModelSamples/_/",
- ProjectTestWebhookEventSerializationSampleSubDirectory = "EventSamples/_/",
- ThrowOnNotFoundRequestModelClassCodeFiles = true,
- ThrowOnNotFoundResponseModelClassCodeFiles = true,
- ThrowOnNotFoundExecutingExtensionClassCodeFiles = true,
- ThrowOnNotFoundWebhookEventClassCodeFiles = true,
- ThrowOnNotFoundRequestModelSerializationSampleFiles = true,
- ThrowOnNotFoundResponseModelSerializationSampleFiles = true,
- ThrowOnNotFoundWebhookEventSerializationSampleFiles = true
- };
- new SourceFileAnalyzer(options).AssertNoIssues();
- }))
- );
+ Assert.Null(Record.Exception(() =>
+ {
+ string workdir = Environment.CurrentDirectory;
+ string projdir = Path.Combine(workdir, "../../../../../");
- Assert.Multiple(
- () => Assert.Null(Record.Exception(() =>
+ var options = new SourceFileAnalyzerOptions()
{
- var options = new TypeDeclarationAnalyzerOptions()
+ SdkAssembly = Assembly.GetAssembly(typeof(DouyinMicroAppClient))!,
+ SdkRequestModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.Models",
+ SdkResponseModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.Models",
+ SdkWebhookEventDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.Events",
+ ProjectSourceRootDirectory = Path.Combine(projdir, "./src/SKIT.FlurlHttpClient.ByteDance.MicroApp/"),
+ ProjectTestRootDirectory = Path.Combine(projdir, "./test/SKIT.FlurlHttpClient.ByteDance.MicroApp.UnitTests/"),
+ ProjectTestRequestModelSerializationSampleSubDirectory = "ModelSamples/_/",
+ ProjectTestResponseModelSerializationSampleSubDirectory = "ModelSamples/_/",
+ ProjectTestWebhookEventSerializationSampleSubDirectory = "EventSamples/_/",
+ ThrowOnNotFoundRequestModelClassCodeFiles = true,
+ ThrowOnNotFoundResponseModelClassCodeFiles = true,
+ ThrowOnNotFoundExecutingExtensionClassCodeFiles = true,
+ ThrowOnNotFoundWebhookEventClassCodeFiles = true,
+ ThrowOnNotFoundRequestModelSerializationSampleFiles = true,
+ ThrowOnNotFoundResponseModelSerializationSampleFiles = true,
+ ThrowOnNotFoundWebhookEventSerializationSampleFiles = true
+ };
+ new SourceFileAnalyzer(options)
+ .AddRule((_, _, cur) =>
{
- SdkAssembly = Assembly.GetAssembly(typeof(DouyinMicroAppClient))!,
- SdkRequestModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi.Models",
- SdkResponseModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi.Models",
- SdkExecutingExtensionDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi",
- SdkWebhookEventDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi.Events",
- ThrowOnNotFoundRequestModelTypes = true,
- ThrowOnNotFoundResponseModelTypes = true,
- ThrowOnNotFoundExecutingExtensionTypes = true,
- ThrowOnNotFoundWebhookEventTypes = true
- };
- new TypeDeclarationAnalyzer(options).AssertNoIssues();
- })),
-
- () => Assert.Null(Record.Exception(() =>
+ if (cur.ContentKind != SourceFileContentKinds.ExecutingExtensionClassCode ||
+ cur.FileKind != SourceFileKinds.CSharp)
+ return;
+
+ using FileStream stream = cur.FileInfo.Open(FileMode.Open, FileAccess.Read);
+ using TextReader streamReader = new StreamReader(stream);
+ SyntaxTree syntaxTree = CSharpSyntaxTree.ParseText(streamReader.ReadToEnd()).WithFilePath(cur.FileInfo.FullName);
+ CompilationUnitSyntax syntaxRootNode = syntaxTree.GetCompilationUnitRoot();
+ MethodDeclarationSyntax[] syntaxMethodDeclarationNodes = syntaxRootNode.Members
+ .Where(s => SourceFileCodeSyntaxKinds.BaseNamespaceDeclaration.Contains(s.Kind()))
+ .OfType()
+ .SelectMany(s => s.Members
+ .Where(s => s.IsKind(SyntaxKind.ClassDeclaration))
+ .OfType()
+ .Where(s => s.Identifier.ToFullString().Contains("ExecuteLegacy")) // 仅扫描旧版 API
+ )
+ .SelectMany(s => s.Members
+ .Where(s => s.IsKind(SyntaxKind.MethodDeclaration))
+ .OfType()
+ )
+ .Where(s =>
+ {
+ string methodName = s.Identifier.ToFullString().Trim();
+ return methodName.StartsWith("Execute") &&
+ methodName.EndsWith("Async");
+ })
+ .ToArray();
+ foreach (MethodDeclarationSyntax syntaxMethodDeclarationNode in syntaxMethodDeclarationNodes)
+ {
+ string methodName = syntaxMethodDeclarationNode.Identifier.ToFullString().Trim();
+
+ ExecutingMethodUrlPathSegmentsSyntaxWalker syntaxWalker = new ExecutingMethodUrlPathSegmentsSyntaxWalker();
+ syntaxWalker.Reset().Visit(syntaxMethodDeclarationNode);
+
+ string[] urlPathSegments1 = syntaxWalker.Result1 ?? Array.Empty();
+ string[] urlPathSegments2 = syntaxWalker.Result2 ?? Array.Empty();
+ for (int i = 0, len = Math.Max(urlPathSegments1.Length, urlPathSegments1.Length); i < len; i++)
+ {
+ string? s1 = urlPathSegments1.Length > i ? urlPathSegments1[i] : null;
+ string? s2 = urlPathSegments2.Length > i ? urlPathSegments2[i] : null;
+ if (!string.Equals(s1, s2))
+ throw new AnalysisException($"文件 \"{cur.FileInfo.FullName}\"下的函数 \"{methodName}\" 应是一个 API 接口方法、且适配旧版入口点,但其 URL 路径的代码实现存在冲突。(Expected: \"{"/" + string.Join("/", urlPathSegments1)}\", Actual: \"{"/" + string.Join("/", urlPathSegments2)}\")");
+ }
+ }
+ })
+ .AssertNoIssues();
+ }));
+ }
+
+ private void CodeAnalyze_ExtendedSDK_OpenApi()
+ {
+ Assert.Null(Record.Exception(() =>
+ {
+ var options = new TypeDeclarationAnalyzerOptions()
{
- string workdir = Environment.CurrentDirectory;
- string projdir = Path.Combine(workdir, "../../../../../");
+ SdkAssembly = Assembly.GetAssembly(typeof(DouyinMicroAppClient))!,
+ SdkRequestModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi.Models",
+ SdkResponseModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi.Models",
+ SdkExecutingExtensionDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi",
+ SdkWebhookEventDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi.Events",
+ ThrowOnNotFoundRequestModelTypes = true,
+ ThrowOnNotFoundResponseModelTypes = true,
+ ThrowOnNotFoundExecutingExtensionTypes = true,
+ ThrowOnNotFoundWebhookEventTypes = true
+ };
+ new TypeDeclarationAnalyzer(options).AssertNoIssues();
+ }));
- var options = new SourceFileAnalyzerOptions()
- {
- SdkAssembly = Assembly.GetAssembly(typeof(DouyinMicroAppOpenApiClient))!,
- SdkRequestModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi.Models",
- SdkResponseModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi.Models",
- SdkWebhookEventDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi.Events",
- ProjectSourceRootDirectory = Path.Combine(projdir, "./src/SKIT.FlurlHttpClient.ByteDance.MicroApp/"),
- ProjectSourceRequestModelClassCodeSubDirectory = "ExtendedSDK/OpenApi/Models/",
- ProjectSourceResponseModelClassCodeSubDirectory = "ExtendedSDK/OpenApi/Models/",
- ProjectSourceExecutingExtensionClassCodeSubDirectory = "ExtendedSDK/OpenApi/Extensions/",
- ProjectSourceWebhookEventClassCodeSubDirectory = "ExtendedSDK/OpenApi/Events/",
- ProjectTestRootDirectory = Path.Combine(projdir, "./test/SKIT.FlurlHttpClient.ByteDance.MicroApp.UnitTests/"),
- ProjectTestRequestModelSerializationSampleSubDirectory = "ModelSamples/OpenApi/",
- ProjectTestResponseModelSerializationSampleSubDirectory = "ModelSamples/OpenApi/",
- ProjectTestWebhookEventSerializationSampleSubDirectory = "EventSamples/OpenApi/",
- ThrowOnNotFoundRequestModelClassCodeFiles = true,
- ThrowOnNotFoundResponseModelClassCodeFiles = true,
- ThrowOnNotFoundExecutingExtensionClassCodeFiles = true,
- ThrowOnNotFoundWebhookEventClassCodeFiles = true,
- ThrowOnNotFoundRequestModelSerializationSampleFiles = true,
- ThrowOnNotFoundResponseModelSerializationSampleFiles = true,
- ThrowOnNotFoundWebhookEventSerializationSampleFiles = true
- };
- new SourceFileAnalyzer(options).AssertNoIssues();
- }))
- );
+ Assert.Null(Record.Exception(() =>
+ {
+ string workdir = Environment.CurrentDirectory;
+ string projdir = Path.Combine(workdir, "../../../../../");
- Assert.Multiple(
- () => Assert.Null(Record.Exception(() =>
+ var options = new SourceFileAnalyzerOptions()
{
- var options = new TypeDeclarationAnalyzerOptions()
+ SdkAssembly = Assembly.GetAssembly(typeof(DouyinMicroAppOpenApiClient))!,
+ SdkRequestModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi.Models",
+ SdkResponseModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi.Models",
+ SdkWebhookEventDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.OpenApi.Events",
+ ProjectSourceRootDirectory = Path.Combine(projdir, "./src/SKIT.FlurlHttpClient.ByteDance.MicroApp/"),
+ ProjectSourceRequestModelClassCodeSubDirectory = "ExtendedSDK/OpenApi/Models/",
+ ProjectSourceResponseModelClassCodeSubDirectory = "ExtendedSDK/OpenApi/Models/",
+ ProjectSourceExecutingExtensionClassCodeSubDirectory = "ExtendedSDK/OpenApi/Extensions/",
+ ProjectSourceWebhookEventClassCodeSubDirectory = "ExtendedSDK/OpenApi/Events/",
+ ProjectTestRootDirectory = Path.Combine(projdir, "./test/SKIT.FlurlHttpClient.ByteDance.MicroApp.UnitTests/"),
+ ProjectTestRequestModelSerializationSampleSubDirectory = "ModelSamples/OpenApi/",
+ ProjectTestResponseModelSerializationSampleSubDirectory = "ModelSamples/OpenApi/",
+ ProjectTestWebhookEventSerializationSampleSubDirectory = "EventSamples/OpenApi/",
+ ThrowOnNotFoundRequestModelClassCodeFiles = true,
+ ThrowOnNotFoundResponseModelClassCodeFiles = true,
+ ThrowOnNotFoundExecutingExtensionClassCodeFiles = true,
+ ThrowOnNotFoundWebhookEventClassCodeFiles = true,
+ ThrowOnNotFoundRequestModelSerializationSampleFiles = true,
+ ThrowOnNotFoundResponseModelSerializationSampleFiles = true,
+ ThrowOnNotFoundWebhookEventSerializationSampleFiles = true
+ };
+ new SourceFileAnalyzer(options)
+ .AddRule((_, _, cur) =>
{
- SdkAssembly = Assembly.GetAssembly(typeof(DouyinMicroAppProductApiClient))!,
- SdkRequestModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.ProductApi.Models",
- SdkResponseModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.ProductApi.Models",
- SdkExecutingExtensionDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.ProductApi",
- SdkWebhookEventDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.ProductApi.Events",
- ThrowOnNotFoundRequestModelTypes = true,
- ThrowOnNotFoundResponseModelTypes = true,
- ThrowOnNotFoundExecutingExtensionTypes = true,
- ThrowOnNotFoundWebhookEventTypes = true
- };
- new TypeDeclarationAnalyzer(options).AssertNoIssues();
- })),
-
- () => Assert.Null(Record.Exception(() =>
+ if (cur.ContentKind != SourceFileContentKinds.ExecutingExtensionClassCode ||
+ cur.FileKind != SourceFileKinds.CSharp)
+ return;
+
+ using FileStream stream = cur.FileInfo.Open(FileMode.Open, FileAccess.Read);
+ using TextReader streamReader = new StreamReader(stream);
+ SyntaxTree syntaxTree = CSharpSyntaxTree.ParseText(streamReader.ReadToEnd()).WithFilePath(cur.FileInfo.FullName);
+ CompilationUnitSyntax syntaxRootNode = syntaxTree.GetCompilationUnitRoot();
+ MethodDeclarationSyntax[] syntaxMethodDeclarationNodes = syntaxRootNode.Members
+ .Where(s => SourceFileCodeSyntaxKinds.BaseNamespaceDeclaration.Contains(s.Kind()))
+ .OfType()
+ .SelectMany(s => s.Members
+ .Where(s => s.IsKind(SyntaxKind.ClassDeclaration))
+ .OfType()
+ .Where(s => s.Identifier.ToFullString().Contains("ExecuteLegacy")) // 仅扫描旧版 API
+ )
+ .SelectMany(s => s.Members
+ .Where(s => s.IsKind(SyntaxKind.MethodDeclaration))
+ .OfType()
+ )
+ .Where(s =>
+ {
+ string methodName = s.Identifier.ToFullString().Trim();
+ return methodName.StartsWith("Execute") &&
+ methodName.EndsWith("Async");
+ })
+ .ToArray();
+ foreach (MethodDeclarationSyntax syntaxMethodDeclarationNode in syntaxMethodDeclarationNodes)
+ {
+ string methodName = syntaxMethodDeclarationNode.Identifier.ToFullString().Trim();
+
+ ExecutingMethodUrlPathSegmentsSyntaxWalker syntaxWalker = new ExecutingMethodUrlPathSegmentsSyntaxWalker();
+ syntaxWalker.Reset().Visit(syntaxMethodDeclarationNode);
+
+ string[] urlPathSegments1 = syntaxWalker.Result1 ?? Array.Empty();
+ string[] urlPathSegments2 = syntaxWalker.Result2 ?? Array.Empty();
+ for (int i = 0, len = Math.Max(urlPathSegments1.Length, urlPathSegments1.Length); i < len; i++)
+ {
+ string? s1 = urlPathSegments1.Length > i ? urlPathSegments1[i] : null;
+ string? s2 = urlPathSegments2.Length > i ? urlPathSegments2[i] : null;
+ if (!string.Equals(s1, s2))
+ throw new AnalysisException($"文件 \"{cur.FileInfo.FullName}\"下的函数 \"{methodName}\" 应是一个 API 接口方法、且适配旧版入口点,但其 URL 路径的代码实现存在冲突。(Expected: \"{"/" + string.Join("/", urlPathSegments1)}\", Actual: \"{"/" + string.Join("/", urlPathSegments2)}\")");
+ }
+ }
+ })
+ .AssertNoIssues();
+ }));
+ }
+
+ private void CodeAnalyze_ExtendedSDK_ProductApi()
+ {
+ Assert.Null(Record.Exception(() =>
+ {
+ var options = new TypeDeclarationAnalyzerOptions()
{
- string workdir = Environment.CurrentDirectory;
- string projdir = Path.Combine(workdir, "../../../../../");
+ SdkAssembly = Assembly.GetAssembly(typeof(DouyinMicroAppProductApiClient))!,
+ SdkRequestModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.ProductApi.Models",
+ SdkResponseModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.ProductApi.Models",
+ SdkExecutingExtensionDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.ProductApi",
+ SdkWebhookEventDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.ProductApi.Events",
+ ThrowOnNotFoundRequestModelTypes = true,
+ ThrowOnNotFoundResponseModelTypes = true,
+ ThrowOnNotFoundExecutingExtensionTypes = true,
+ ThrowOnNotFoundWebhookEventTypes = true
+ };
+ new TypeDeclarationAnalyzer(options).AssertNoIssues();
+ }));
- var options = new SourceFileAnalyzerOptions()
- {
- SdkAssembly = Assembly.GetAssembly(typeof(DouyinMicroAppProductApiClient))!,
- SdkRequestModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.ProductApi.Models",
- SdkResponseModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.ProductApi.Models",
- SdkWebhookEventDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.ProductApi.Events",
- ProjectSourceRootDirectory = Path.Combine(projdir, "./src/SKIT.FlurlHttpClient.ByteDance.MicroApp/"),
- ProjectSourceRequestModelClassCodeSubDirectory = "ExtendedSDK/ProductApi/Models/",
- ProjectSourceResponseModelClassCodeSubDirectory = "ExtendedSDK/ProductApi/Models/",
- ProjectSourceExecutingExtensionClassCodeSubDirectory = "ExtendedSDK/ProductApi/Extensions/",
- ProjectSourceWebhookEventClassCodeSubDirectory = "ExtendedSDK/ProductApi/Events/",
- ProjectTestRootDirectory = Path.Combine(projdir, "./test/SKIT.FlurlHttpClient.ByteDance.MicroApp.UnitTests/"),
- ProjectTestRequestModelSerializationSampleSubDirectory = "ModelSamples/ProductApi/",
- ProjectTestResponseModelSerializationSampleSubDirectory = "ModelSamples/ProductApi/",
- ProjectTestWebhookEventSerializationSampleSubDirectory = "EventSamples/ProductApi/",
- ThrowOnNotFoundRequestModelClassCodeFiles = true,
- ThrowOnNotFoundResponseModelClassCodeFiles = true,
- ThrowOnNotFoundExecutingExtensionClassCodeFiles = true,
- ThrowOnNotFoundWebhookEventClassCodeFiles = true,
- ThrowOnNotFoundRequestModelSerializationSampleFiles = true,
- ThrowOnNotFoundResponseModelSerializationSampleFiles = true,
- ThrowOnNotFoundWebhookEventSerializationSampleFiles = true
- };
- new SourceFileAnalyzer(options).AssertNoIssues();
- }))
- );
+ Assert.Null(Record.Exception(() =>
+ {
+ string workdir = Environment.CurrentDirectory;
+ string projdir = Path.Combine(workdir, "../../../../../");
- Assert.Multiple(
- () => Assert.Null(Record.Exception(() =>
+ var options = new SourceFileAnalyzerOptions()
{
- var options = new TypeDeclarationAnalyzerOptions()
- {
- SdkAssembly = Assembly.GetAssembly(typeof(DouyinMicroAppRoleApiClient))!,
- SdkRequestModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.RoleApi.Models",
- SdkResponseModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.RoleApi.Models",
- SdkExecutingExtensionDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.RoleApi",
- ThrowOnNotFoundRequestModelTypes = true,
- ThrowOnNotFoundResponseModelTypes = true,
- ThrowOnNotFoundExecutingExtensionTypes = true
- };
- new TypeDeclarationAnalyzer(options).AssertNoIssues();
- })),
-
- () => Assert.Null(Record.Exception(() =>
+ SdkAssembly = Assembly.GetAssembly(typeof(DouyinMicroAppProductApiClient))!,
+ SdkRequestModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.ProductApi.Models",
+ SdkResponseModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.ProductApi.Models",
+ SdkWebhookEventDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.ProductApi.Events",
+ ProjectSourceRootDirectory = Path.Combine(projdir, "./src/SKIT.FlurlHttpClient.ByteDance.MicroApp/"),
+ ProjectSourceRequestModelClassCodeSubDirectory = "ExtendedSDK/ProductApi/Models/",
+ ProjectSourceResponseModelClassCodeSubDirectory = "ExtendedSDK/ProductApi/Models/",
+ ProjectSourceExecutingExtensionClassCodeSubDirectory = "ExtendedSDK/ProductApi/Extensions/",
+ ProjectSourceWebhookEventClassCodeSubDirectory = "ExtendedSDK/ProductApi/Events/",
+ ProjectTestRootDirectory = Path.Combine(projdir, "./test/SKIT.FlurlHttpClient.ByteDance.MicroApp.UnitTests/"),
+ ProjectTestRequestModelSerializationSampleSubDirectory = "ModelSamples/ProductApi/",
+ ProjectTestResponseModelSerializationSampleSubDirectory = "ModelSamples/ProductApi/",
+ ProjectTestWebhookEventSerializationSampleSubDirectory = "EventSamples/ProductApi/",
+ ThrowOnNotFoundRequestModelClassCodeFiles = true,
+ ThrowOnNotFoundResponseModelClassCodeFiles = true,
+ ThrowOnNotFoundExecutingExtensionClassCodeFiles = true,
+ ThrowOnNotFoundWebhookEventClassCodeFiles = true,
+ ThrowOnNotFoundRequestModelSerializationSampleFiles = true,
+ ThrowOnNotFoundResponseModelSerializationSampleFiles = true,
+ ThrowOnNotFoundWebhookEventSerializationSampleFiles = true
+ };
+ new SourceFileAnalyzer(options).AssertNoIssues();
+ }));
+ }
+
+ private void CodeAnalyze_ExtendedSDK_RoleApi()
+ {
+ Assert.Null(Record.Exception(() =>
+ {
+ var options = new TypeDeclarationAnalyzerOptions()
{
- string workdir = Environment.CurrentDirectory;
- string projdir = Path.Combine(workdir, "../../../../../");
+ SdkAssembly = Assembly.GetAssembly(typeof(DouyinMicroAppRoleApiClient))!,
+ SdkRequestModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.RoleApi.Models",
+ SdkResponseModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.RoleApi.Models",
+ SdkExecutingExtensionDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.RoleApi",
+ ThrowOnNotFoundRequestModelTypes = true,
+ ThrowOnNotFoundResponseModelTypes = true,
+ ThrowOnNotFoundExecutingExtensionTypes = true
+ };
+ new TypeDeclarationAnalyzer(options).AssertNoIssues();
+ }));
- var options = new SourceFileAnalyzerOptions()
- {
- SdkAssembly = Assembly.GetAssembly(typeof(DouyinMicroAppRoleApiClient))!,
- SdkRequestModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.RoleApi.Models",
- SdkResponseModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.RoleApi.Models",
- ProjectSourceRootDirectory = Path.Combine(projdir, "./src/SKIT.FlurlHttpClient.ByteDance.MicroApp/"),
- ProjectSourceRequestModelClassCodeSubDirectory = "ExtendedSDK/RoleApi/Models/",
- ProjectSourceResponseModelClassCodeSubDirectory = "ExtendedSDK/RoleApi/Models/",
- ProjectSourceExecutingExtensionClassCodeSubDirectory = "ExtendedSDK/RoleApi/Extensions/",
- ProjectSourceWebhookEventClassCodeSubDirectory = "ExtendedSDK/RoleApi/Events/",
- ProjectTestRootDirectory = Path.Combine(projdir, "./test/SKIT.FlurlHttpClient.ByteDance.MicroApp.UnitTests/"),
- ProjectTestRequestModelSerializationSampleSubDirectory = "ModelSamples/RoleApi/",
- ProjectTestResponseModelSerializationSampleSubDirectory = "ModelSamples/RoleApi/",
- ProjectTestWebhookEventSerializationSampleSubDirectory = "EventSamples/RoleApi/",
- ThrowOnNotFoundRequestModelClassCodeFiles = true,
- ThrowOnNotFoundResponseModelClassCodeFiles = true,
- ThrowOnNotFoundExecutingExtensionClassCodeFiles = true,
- ThrowOnNotFoundRequestModelSerializationSampleFiles = true,
- ThrowOnNotFoundResponseModelSerializationSampleFiles = true
- };
- new SourceFileAnalyzer(options).AssertNoIssues();
- }))
- );
+ Assert.Null(Record.Exception(() =>
+ {
+ string workdir = Environment.CurrentDirectory;
+ string projdir = Path.Combine(workdir, "../../../../../");
- Assert.Multiple(
- () => Assert.Null(Record.Exception(() =>
+ var options = new SourceFileAnalyzerOptions()
{
- var options = new TypeDeclarationAnalyzerOptions()
- {
- SdkAssembly = Assembly.GetAssembly(typeof(DouyinMicroAppWebcastClient))!,
- SdkRequestModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.Webcast.Models",
- SdkResponseModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.Webcast.Models",
- SdkExecutingExtensionDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.Webcast",
- ThrowOnNotFoundRequestModelTypes = true,
- ThrowOnNotFoundResponseModelTypes = true,
- ThrowOnNotFoundExecutingExtensionTypes = true
- };
- new TypeDeclarationAnalyzer(options).AssertNoIssues();
- })),
-
- () => Assert.Null(Record.Exception(() =>
+ SdkAssembly = Assembly.GetAssembly(typeof(DouyinMicroAppRoleApiClient))!,
+ SdkRequestModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.RoleApi.Models",
+ SdkResponseModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.RoleApi.Models",
+ ProjectSourceRootDirectory = Path.Combine(projdir, "./src/SKIT.FlurlHttpClient.ByteDance.MicroApp/"),
+ ProjectSourceRequestModelClassCodeSubDirectory = "ExtendedSDK/RoleApi/Models/",
+ ProjectSourceResponseModelClassCodeSubDirectory = "ExtendedSDK/RoleApi/Models/",
+ ProjectSourceExecutingExtensionClassCodeSubDirectory = "ExtendedSDK/RoleApi/Extensions/",
+ ProjectSourceWebhookEventClassCodeSubDirectory = "ExtendedSDK/RoleApi/Events/",
+ ProjectTestRootDirectory = Path.Combine(projdir, "./test/SKIT.FlurlHttpClient.ByteDance.MicroApp.UnitTests/"),
+ ProjectTestRequestModelSerializationSampleSubDirectory = "ModelSamples/RoleApi/",
+ ProjectTestResponseModelSerializationSampleSubDirectory = "ModelSamples/RoleApi/",
+ ProjectTestWebhookEventSerializationSampleSubDirectory = "EventSamples/RoleApi/",
+ ThrowOnNotFoundRequestModelClassCodeFiles = true,
+ ThrowOnNotFoundResponseModelClassCodeFiles = true,
+ ThrowOnNotFoundExecutingExtensionClassCodeFiles = true,
+ ThrowOnNotFoundRequestModelSerializationSampleFiles = true,
+ ThrowOnNotFoundResponseModelSerializationSampleFiles = true
+ };
+ new SourceFileAnalyzer(options).AssertNoIssues();
+ }));
+ }
+
+ private void CodeAnalyze_ExtendedSDK_Webcast()
+ {
+ Assert.Null(Record.Exception(() =>
+ {
+ var options = new TypeDeclarationAnalyzerOptions()
+ {
+ SdkAssembly = Assembly.GetAssembly(typeof(DouyinMicroAppWebcastClient))!,
+ SdkRequestModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.Webcast.Models",
+ SdkResponseModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.Webcast.Models",
+ SdkExecutingExtensionDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.Webcast",
+ ThrowOnNotFoundRequestModelTypes = true,
+ ThrowOnNotFoundResponseModelTypes = true,
+ ThrowOnNotFoundExecutingExtensionTypes = true
+ };
+ new TypeDeclarationAnalyzer(options).AssertNoIssues();
+ }));
+
+ Assert.Null(Record.Exception(() =>
+ {
+ string workdir = Environment.CurrentDirectory;
+ string projdir = Path.Combine(workdir, "../../../../../");
+
+ var options = new SourceFileAnalyzerOptions()
{
- string workdir = Environment.CurrentDirectory;
- string projdir = Path.Combine(workdir, "../../../../../");
+ SdkAssembly = Assembly.GetAssembly(typeof(DouyinMicroAppWebcastClient))!,
+ SdkRequestModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.Webcast.Models",
+ SdkResponseModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.Webcast.Models",
+ ProjectSourceRootDirectory = Path.Combine(projdir, "./src/SKIT.FlurlHttpClient.ByteDance.MicroApp/"),
+ ProjectSourceRequestModelClassCodeSubDirectory = "ExtendedSDK/Webcast/Models/",
+ ProjectSourceResponseModelClassCodeSubDirectory = "ExtendedSDK/Webcast/Models/",
+ ProjectSourceExecutingExtensionClassCodeSubDirectory = "ExtendedSDK/Webcast/Extensions/",
+ ProjectSourceWebhookEventClassCodeSubDirectory = "ExtendedSDK/Webcast/Events/",
+ ProjectTestRootDirectory = Path.Combine(projdir, "./test/SKIT.FlurlHttpClient.ByteDance.MicroApp.UnitTests/"),
+ ProjectTestRequestModelSerializationSampleSubDirectory = "ModelSamples/Webcast/",
+ ProjectTestResponseModelSerializationSampleSubDirectory = "ModelSamples/Webcast/",
+ ProjectTestWebhookEventSerializationSampleSubDirectory = "EventSamples/Webcast/",
+ ThrowOnNotFoundRequestModelClassCodeFiles = true,
+ ThrowOnNotFoundResponseModelClassCodeFiles = true,
+ ThrowOnNotFoundExecutingExtensionClassCodeFiles = true,
+ ThrowOnNotFoundRequestModelSerializationSampleFiles = true,
+ ThrowOnNotFoundResponseModelSerializationSampleFiles = true
+ };
+ new SourceFileAnalyzer(options).AssertNoIssues();
+ }));
+ }
+
+ private class ExecutingMethodUrlPathSegmentsSyntaxWalker : CSharpSyntaxWalker
+ {
+ public string[]? Result1 { get; private set; }
- var options = new SourceFileAnalyzerOptions()
+ public string[]? Result2 { get; private set; }
+
+ public ExecutingMethodUrlPathSegmentsSyntaxWalker Reset()
+ {
+ Result1 = null;
+ Result2 = null;
+ return this;
+ }
+
+ public override void VisitInvocationExpression(InvocationExpressionSyntax node)
+ {
+ if (node.Expression is MemberAccessExpressionSyntax memberAccessExpressionSyntaxNode)
+ {
+ if (node.ToFullString().Contains("CreateFlurlRequest") && node.ArgumentList?.Arguments.Count >= 3)
{
- SdkAssembly = Assembly.GetAssembly(typeof(DouyinMicroAppWebcastClient))!,
- SdkRequestModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.Webcast.Models",
- SdkResponseModelDeclarationNamespace = "SKIT.FlurlHttpClient.ByteDance.MicroApp.ExtendedSDK.Webcast.Models",
- ProjectSourceRootDirectory = Path.Combine(projdir, "./src/SKIT.FlurlHttpClient.ByteDance.MicroApp/"),
- ProjectSourceRequestModelClassCodeSubDirectory = "ExtendedSDK/Webcast/Models/",
- ProjectSourceResponseModelClassCodeSubDirectory = "ExtendedSDK/Webcast/Models/",
- ProjectSourceExecutingExtensionClassCodeSubDirectory = "ExtendedSDK/Webcast/Extensions/",
- ProjectSourceWebhookEventClassCodeSubDirectory = "ExtendedSDK/Webcast/Events/",
- ProjectTestRootDirectory = Path.Combine(projdir, "./test/SKIT.FlurlHttpClient.ByteDance.MicroApp.UnitTests/"),
- ProjectTestRequestModelSerializationSampleSubDirectory = "ModelSamples/Webcast/",
- ProjectTestResponseModelSerializationSampleSubDirectory = "ModelSamples/Webcast/",
- ProjectTestWebhookEventSerializationSampleSubDirectory = "EventSamples/Webcast/",
- ThrowOnNotFoundRequestModelClassCodeFiles = true,
- ThrowOnNotFoundResponseModelClassCodeFiles = true,
- ThrowOnNotFoundExecutingExtensionClassCodeFiles = true,
- ThrowOnNotFoundRequestModelSerializationSampleFiles = true,
- ThrowOnNotFoundResponseModelSerializationSampleFiles = true
- };
- new SourceFileAnalyzer(options).AssertNoIssues();
- }))
- );
+ string arg1 = node.ArgumentList.Arguments[0].ToFullString();
+ string arg2 = node.ArgumentList.Arguments[1].ToFullString();
+ if (arg1 is not null && arg2.Contains(nameof(HttpMethod)))
+ {
+ Result1 ??= node.ArgumentList.Arguments
+ .Skip(2)
+ .Select(s => FormatArgument(s.ToFullString()))
+ .ToArray();
+ }
+ }
+ else if (node.ToFullString().Contains("WithUrl") && node.ArgumentList?.Arguments.Count >= 1)
+ {
+ string arg1 = node.ArgumentList.Arguments[0].ToFullString();
+ if (arg1 is not null && arg1.Contains("AppendPathSegments"))
+ {
+ Result2 ??= node.ArgumentList.Arguments[0].Expression
+ .ChildNodes()
+ .Where(s => s.IsKind(SyntaxKind.InvocationExpression))
+ .OfType()
+ .SelectMany(s => s.ChildNodes()
+ .Where(s => s.IsKind(SyntaxKind.ArgumentList))
+ .OfType()
+ )
+ .SelectMany(s => s.ChildNodes()
+ .Where(s => s.IsKind(SyntaxKind.Argument))
+ .OfType()
+ )
+ .Select(s => FormatArgument(s.ToFullString()))
+ .ToArray();
+ }
+ }
+ }
+
+ base.VisitInvocationExpression(node);
+ }
+
+ private string FormatArgument(string arg)
+ {
+ if (arg.StartsWith("\"") && arg.EndsWith("\""))
+ return arg.Trim('\"');
+
+ if (arg == "string.Empty")
+ return string.Empty;
+
+ return "{" + arg + "}";
+ }
}
}
}