Skip to content

Commit d153d10

Browse files
committed
feat(douyinopen): 新增获取用户唯一标识接口
1 parent 6a04985 commit d153d10

5 files changed

Lines changed: 98 additions & 0 deletions

File tree

src/SKIT.FlurlHttpClient.ByteDance.DouyinOpen/Extensions/DouyinOpenClientExecuteApiDouyinAuthExtensions.cs

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,29 @@ namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen
88
{
99
public static class DouyinOpenClientExecuteApiDouyinAuthExtensions
1010
{
11+
/// <summary>
12+
/// <para>异步调用 [POST] /api/douyin/v1/auth/get_related_id/ 接口。</para>
13+
/// <para>
14+
/// REF: <br/>
15+
/// <![CDATA[ https://developer.open-douyin.com/docs/resource/zh-CN/dop/develop/openapi/account-management/get-related-id ]]>
16+
/// </para>
17+
/// </summary>
18+
/// <param name="client"></param>
19+
/// <param name="request"></param>
20+
/// <param name="cancellationToken"></param>
21+
/// <returns></returns>
22+
public static async Task<Models.DouyinAuthGetRelatedIdV1Response> ExecuteDouyinAuthGetRelatedIdV1Async(this DouyinOpenClient client, Models.DouyinAuthGetRelatedIdV1Request request, CancellationToken cancellationToken = default)
23+
{
24+
if (client is null) throw new ArgumentNullException(nameof(client));
25+
if (request is null) throw new ArgumentNullException(nameof(request));
26+
27+
IFlurlRequest flurlReq = client
28+
.CreateFlurlRequest(request, HttpMethod.Post, "api", "douyin", "v1", "auth", "get_related_id/")
29+
.WithHeader("access-token", request.AccessToken);
30+
31+
return await client.SendFlurlRequestAsJsonAsync<Models.DouyinAuthGetRelatedIdV1Response>(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
32+
}
33+
1134
/// <summary>
1235
/// <para>异步调用 [POST] /api/douyin/v1/auth/get_openid_by_c/ 接口。</para>
1336
/// <para>
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models
2+
{
3+
/// <summary>
4+
/// <para>表示 [POST] /api/douyin/v1/auth/get_related_id/ 接口的请求。</para>
5+
/// </summary>
6+
public class DouyinAuthGetRelatedIdV1Request : DouyinOpenRequest
7+
{
8+
/// <summary>
9+
/// 获取或设置用户的 OpenId。
10+
/// </summary>
11+
[Newtonsoft.Json.JsonProperty("open_id")]
12+
[System.Text.Json.Serialization.JsonPropertyName("open_id")]
13+
public string OpenId { get; set; } = string.Empty;
14+
}
15+
}
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
namespace SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models
2+
{
3+
/// <summary>
4+
/// <para>表示 [POST] /api/douyin/v1/auth/get_related_id/ 接口的响应。</para>
5+
/// </summary>
6+
public class DouyinAuthGetRelatedIdV1Response : DouyinOpenResponse
7+
{
8+
public static class Types
9+
{
10+
public class Data
11+
{
12+
/// <summary>
13+
/// 获取或设置用户在相同主体下的唯一标志。
14+
/// </summary>
15+
[Newtonsoft.Json.JsonProperty("allied_id")]
16+
[System.Text.Json.Serialization.JsonPropertyName("allied_id")]
17+
public string AlliedId { get; set; } = default!;
18+
}
19+
}
20+
21+
[Newtonsoft.Json.JsonProperty("err_no")]
22+
[System.Text.Json.Serialization.JsonPropertyName("err_no")]
23+
[System.Text.Json.Serialization.JsonNumberHandling(System.Text.Json.Serialization.JsonNumberHandling.AllowReadingFromString)]
24+
public int ErrorNumber { get; set; }
25+
26+
[Newtonsoft.Json.JsonProperty("err_msg")]
27+
[System.Text.Json.Serialization.JsonPropertyName("err_msg")]
28+
public string? ErrorMessage { get; set; }
29+
30+
/// <summary>
31+
/// 获取或设置请求唯一标识。
32+
/// </summary>
33+
[Newtonsoft.Json.JsonProperty("log_id")]
34+
[System.Text.Json.Serialization.JsonPropertyName("log_id")]
35+
public string? LogId { get; set; }
36+
37+
/// <summary>
38+
/// 获取或设置返回数据。
39+
/// </summary>
40+
[Newtonsoft.Json.JsonProperty("data")]
41+
[System.Text.Json.Serialization.JsonPropertyName("data")]
42+
public Types.Data Data { get; set; } = default!;
43+
44+
public override bool IsSuccessful()
45+
{
46+
return GetRawStatus() == 200 && ErrorNumber == 0;
47+
}
48+
}
49+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"open_id": "Cv4PoJXaTPn63rNu"
3+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"log_id": "202405291440576E078D8757B9",
3+
"data": {
4+
"allied_id": "ZsNCZC1dUR"
5+
},
6+
"err_no": 0,
7+
"err_msg": ""
8+
}

0 commit comments

Comments
 (0)