uapi-browser-sdk 0.1.12 → 0.1.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/README.md +63 -4
  2. package/dist/internal/src/apis/ClipzyApi.d.ts +0 -12
  3. package/dist/internal/src/apis/ClipzyApi.js +15 -36
  4. package/dist/internal/src/apis/ConvertApi.d.ts +0 -8
  5. package/dist/internal/src/apis/ConvertApi.js +10 -24
  6. package/dist/internal/src/apis/DailyApi.d.ts +0 -4
  7. package/dist/internal/src/apis/DailyApi.js +5 -12
  8. package/dist/internal/src/apis/DefaultApi.d.ts +0 -20
  9. package/dist/internal/src/apis/DefaultApi.js +25 -60
  10. package/dist/internal/src/apis/GameApi.d.ts +0 -20
  11. package/dist/internal/src/apis/GameApi.js +25 -60
  12. package/dist/internal/src/apis/ImageApi.d.ts +0 -44
  13. package/dist/internal/src/apis/ImageApi.js +55 -132
  14. package/dist/internal/src/apis/MiscApi.d.ts +0 -60
  15. package/dist/internal/src/apis/MiscApi.js +75 -180
  16. package/dist/internal/src/apis/NetworkApi.d.ts +0 -40
  17. package/dist/internal/src/apis/NetworkApi.js +50 -120
  18. package/dist/internal/src/apis/PoemApi.d.ts +0 -4
  19. package/dist/internal/src/apis/PoemApi.js +5 -12
  20. package/dist/internal/src/apis/RandomApi.d.ts +0 -16
  21. package/dist/internal/src/apis/RandomApi.js +20 -48
  22. package/dist/internal/src/apis/SocialApi.d.ts +0 -32
  23. package/dist/internal/src/apis/SocialApi.js +40 -96
  24. package/dist/internal/src/apis/StatusApi.d.ts +0 -8
  25. package/dist/internal/src/apis/StatusApi.js +10 -24
  26. package/dist/internal/src/apis/TextApi.d.ts +0 -44
  27. package/dist/internal/src/apis/TextApi.js +55 -132
  28. package/dist/internal/src/apis/TranslateApi.d.ts +0 -16
  29. package/dist/internal/src/apis/TranslateApi.js +20 -48
  30. package/dist/internal/src/apis/WebParseApi.d.ts +0 -16
  31. package/dist/internal/src/apis/WebParseApi.js +20 -48
  32. package/dist/internal/src/models/GetMiscHolidayCalendar200ResponseHolidaysInner.d.ts +1 -1
  33. package/dist/internal/src/models/GetMiscWeather200Response.d.ts +1 -1
  34. package/dist/internal/src/models/PostAiTranslateRequest.d.ts +2 -2
  35. package/dist/internal/src/models/PostSearchAggregateRequest.d.ts +2 -2
  36. package/dist/internal/src/models/PostSensitiveWordAnalyze200ResponseResultsInner.d.ts +2 -2
  37. package/dist/internal/src/models/PostTextAesDecryptAdvancedRequest.d.ts +2 -2
  38. package/dist/internal/src/models/PostTextAesEncryptAdvancedRequest.d.ts +3 -3
  39. package/dist/internal/src/models/PostTextConvertRequest.d.ts +2 -2
  40. package/dist/internal/src/models/PostTranslateStream400Response.d.ts +1 -1
  41. package/dist/internal/src/runtime.js +0 -15
  42. package/dist/src/errors.d.ts +101 -0
  43. package/dist/src/errors.js +269 -0
  44. package/dist/src/index.d.ts +5 -6
  45. package/dist/src/index.js +15 -11
  46. package/internal/.openapi-generator/VERSION +1 -1
  47. package/internal/src/apis/ClipzyApi.ts +15 -39
  48. package/internal/src/apis/ConvertApi.ts +10 -26
  49. package/internal/src/apis/DailyApi.ts +5 -13
  50. package/internal/src/apis/DefaultApi.ts +25 -65
  51. package/internal/src/apis/GameApi.ts +25 -65
  52. package/internal/src/apis/ImageApi.ts +55 -143
  53. package/internal/src/apis/MiscApi.ts +75 -195
  54. package/internal/src/apis/NetworkApi.ts +50 -130
  55. package/internal/src/apis/PoemApi.ts +5 -13
  56. package/internal/src/apis/RandomApi.ts +20 -52
  57. package/internal/src/apis/SocialApi.ts +40 -104
  58. package/internal/src/apis/StatusApi.ts +10 -26
  59. package/internal/src/apis/TextApi.ts +55 -143
  60. package/internal/src/apis/TranslateApi.ts +20 -52
  61. package/internal/src/apis/WebParseApi.ts +20 -52
  62. package/internal/src/models/GetMiscHolidayCalendar200ResponseHolidaysInner.ts +1 -1
  63. package/internal/src/models/GetMiscWeather200Response.ts +1 -1
  64. package/internal/src/models/PostAiTranslateRequest.ts +2 -2
  65. package/internal/src/models/PostSearchAggregateRequest.ts +2 -2
  66. package/internal/src/models/PostSensitiveWordAnalyze200ResponseResultsInner.ts +2 -2
  67. package/internal/src/models/PostTextAesDecryptAdvancedRequest.ts +2 -2
  68. package/internal/src/models/PostTextAesEncryptAdvancedRequest.ts +3 -3
  69. package/internal/src/models/PostTextConvertRequest.ts +2 -2
  70. package/internal/src/models/PostTranslateStream400Response.ts +1 -1
  71. package/internal/src/runtime.ts +0 -18
  72. package/package.json +1 -1
  73. package/src/errors.ts +321 -0
  74. package/src/index.ts +20 -8
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # uapi-browser-sdk
2
2
 
3
- ![Banner](https://raw.githubusercontent.com/uapis/uapi-browser-sdk/main/banner.png)
3
+ ![Banner](https://raw.githubusercontent.com/AxT-Team/uapi-browser-sdk/main/banner.png)
4
4
 
5
5
  [![Browser TS](https://img.shields.io/badge/TypeScript-ES2020-3178C6?style=flat-square&logo=typescript&logoColor=white)](https://www.typescriptlang.org/)
6
6
  [![Docs](https://img.shields.io/badge/Docs-uapis.cn-2EAE5D?style=flat-square)](https://uapis.cn/)
@@ -18,11 +18,13 @@ npm i uapi-browser-sdk
18
18
  ```ts
19
19
  import { UapiClient } from 'uapi-browser-sdk'
20
20
 
21
- const client = new UapiClient('https://uapis.cn/api/v1')
22
- const result = await client.social.getSocialQqUserinfo({ qq: '10001' })
21
+ const client = new UapiClient('https://uapis.cn', 'YOUR_API_KEY')
22
+ const result = await client.misc.getMiscHotboard({ type: 'weibo' })
23
23
  console.log(result)
24
24
  ```
25
25
 
26
+ 这个接口默认只要传 `type` 就可以拿当前热榜。`time`、`keyword`、`timeStart`、`timeEnd`、`limit`、`sources` 都是按场景再传的可选参数。
27
+
26
28
  ## CDN 引入
27
29
 
28
30
  `uapi-browser-sdk` 发布在 npm,因而可以直接通过常见 CDN 以 ES Module 方式加载。建议在生产环境固定版本号(`@latest` 仅用于快速试用)。
@@ -33,7 +35,7 @@ console.log(result)
33
35
  <script type="module">
34
36
  import { UapiClient } from 'https://cdn.jsdelivr.net/npm/uapi-browser-sdk@latest/dist/index.js';
35
37
 
36
- const client = new UapiClient('https://uapis.cn/api/v1');
38
+ const client = new UapiClient('https://uapis.cn', 'YOUR_API_KEY');
37
39
  const data = await client.social.getSocialQqUserinfo({ qq: '10001' });
38
40
  console.log(data);
39
41
  </script>
@@ -70,6 +72,63 @@ SDK 采用原生 `fetch`,自动补上 `Authorization` 头且不依赖任何 No
70
72
 
71
73
  如果你需要查看字段细节或内部逻辑,仓库中的 `./internal` 目录同步保留了由 `openapi-generator` 生成的完整结构体,随时可供参考。
72
74
 
75
+ ## 响应元信息
76
+
77
+ 每次请求完成后,SDK 会自动把响应 Header 解析成结构化的 `ResponseMeta`,你不用自己拆原始字符串。
78
+
79
+ 成功时可以通过 `client.lastResponseMeta` 读取,失败时可以通过 `err.meta` 读取,两条路径拿到的是同一套字段。
80
+
81
+ ```ts
82
+ import { UapiClient, UapiError } from 'uapi-browser-sdk'
83
+
84
+ const client = new UapiClient('https://uapis.cn', 'YOUR_API_KEY')
85
+
86
+ // 成功路径
87
+ await client.social.getSocialQqUserinfo({ qq: '10001' })
88
+ const meta = client.lastResponseMeta
89
+ if (meta) {
90
+ console.log('这次请求原价:', meta.creditsRequested ?? 0, '积分')
91
+ console.log('这次实际扣费:', meta.creditsCharged ?? 0, '积分')
92
+ console.log('特殊计价:', meta.creditsPricing ?? '原价')
93
+ console.log('余额剩余:', meta.balanceRemainingCents ?? 0, '分')
94
+ console.log('资源包剩余:', meta.quotaRemainingCredits ?? 0, '积分')
95
+ console.log('当前有效额度桶:', meta.activeQuotaBuckets ?? 0)
96
+ console.log('额度用空即停:', meta.stopOnEmpty ?? false)
97
+ console.log('Key QPS:', meta.billingKeyRateRemaining ?? 0, '/', meta.billingKeyRateLimit ?? 0, meta.billingKeyRateUnit ?? 'req')
98
+ console.log('Request ID:', meta.requestId)
99
+ }
100
+
101
+ // 失败路径
102
+ try {
103
+ await client.social.getSocialQqUserinfo({ qq: '10001' })
104
+ } catch (err) {
105
+ if (err instanceof UapiError && err.meta) {
106
+ console.log('Retry-After 秒数:', err.meta.retryAfterSeconds ?? null)
107
+ console.log('Retry-After 原始值:', err.meta.retryAfterRaw ?? null)
108
+ console.log('访客 QPS:', err.meta.visitorRateRemaining ?? 0, '/', err.meta.visitorRateLimit ?? 0)
109
+ console.log('Request ID:', err.meta.requestId)
110
+ }
111
+ }
112
+ ```
113
+
114
+ 常用字段一览:
115
+
116
+ | 字段 | 说明 |
117
+ |------|------|
118
+ | `creditsRequested` | 这次请求原本要扣多少积分,也就是请求价 |
119
+ | `creditsCharged` | 这次请求实际扣了多少积分 |
120
+ | `creditsPricing` | 特殊计价原因,例如缓存半价 `cache-hit-half-price` |
121
+ | `balanceRemainingCents` | 账户余额剩余(分) |
122
+ | `quotaRemainingCredits` | 资源包剩余积分 |
123
+ | `activeQuotaBuckets` | 当前还有多少个有效额度桶参与计费 |
124
+ | `stopOnEmpty` | 额度耗尽后是否直接停止服务 |
125
+ | `retryAfterSeconds` / `retryAfterRaw` | 限流后的等待时长;当服务端返回 HTTP 时间字符串时看 `retryAfterRaw` |
126
+ | `requestId` | 请求唯一 ID,排障时使用 |
127
+ | `billingKeyRateLimit` / `billingKeyRateRemaining` | Billing Key 当前 QPS 规则的上限与剩余 |
128
+ | `billingIpRateLimit` / `billingIpRateRemaining` | Billing Key 单 IP 当前 QPS 规则的上限与剩余 |
129
+ | `visitorRateLimit` / `visitorRateRemaining` | 访客当前 QPS 规则的上限与剩余 |
130
+ | `rateLimitPolicies` / `rateLimits` | 完整结构化限流策略数据 |
131
+
73
132
  ## 错误模型概览
74
133
 
75
134
  | HTTP 状态码 | SDK 错误类型 | 附加信息 |
@@ -25,10 +25,6 @@ export interface PostClipzyStoreOperationRequest {
25
25
  *
26
26
  */
27
27
  export declare class ClipzyApi extends runtime.BaseAPI {
28
- /**
29
- * Creates request options for getClipzyGet without sending the request
30
- */
31
- getClipzyGetRequestOpts(requestParameters: GetClipzyGetRequest): Promise<runtime.RequestOpts>;
32
28
  /**
33
29
  * **此接口用于“最高安全等级”方法。** 您提供第一步中获得的ID,它会返回存储在服务器上的**加密数据**。您需要在自己的客户端中,使用您自己保管的密钥来解密它。
34
30
  * 步骤2 (方法一): 获取加密数据
@@ -39,10 +35,6 @@ export declare class ClipzyApi extends runtime.BaseAPI {
39
35
  * 步骤2 (方法一): 获取加密数据
40
36
  */
41
37
  getClipzyGet(requestParameters: GetClipzyGetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetClipzyGet200Response>;
42
- /**
43
- * Creates request options for getClipzyRaw without sending the request
44
- */
45
- getClipzyRawRequestOpts(requestParameters: GetClipzyRawRequest): Promise<runtime.RequestOpts>;
46
38
  /**
47
39
  * **此接口用于“方便自动化”方法。** 您提供第一步获得的ID,并附上您自己保管的**解密密钥**作为 `key` 参数。服务器会直接为您解密,并返回纯文本内容。 > [!IMPORTANT] > 查看文档首页的 **cURL 示例**,了解此接口最典型的用法。
48
40
  * 步骤2 (方法二): 获取原始文本
@@ -53,10 +45,6 @@ export declare class ClipzyApi extends runtime.BaseAPI {
53
45
  * 步骤2 (方法二): 获取原始文本
54
46
  */
55
47
  getClipzyRaw(requestParameters: GetClipzyRawRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<string>;
56
- /**
57
- * Creates request options for postClipzyStore without sending the request
58
- */
59
- postClipzyStoreRequestOpts(requestParameters: PostClipzyStoreOperationRequest): Promise<runtime.RequestOpts>;
60
48
  /**
61
49
  * 这是所有流程的第一步。您的客户端应用需要先在本地准备好 **加密后的数据**,然后调用此接口进行上传。成功后,您会得到一个用于后续操作的唯一ID。 > [!NOTE] > 您发送给此接口的应该是**密文**,而不是原始文本。请参考文档首页的JavaScript示例来了解如何在客户端进行加密。
62
50
  * 步骤1:上传加密数据
@@ -18,9 +18,10 @@ import { GetClipzyGet200ResponseFromJSON, PostClipzyStore200ResponseFromJSON, Po
18
18
  */
19
19
  export class ClipzyApi extends runtime.BaseAPI {
20
20
  /**
21
- * Creates request options for getClipzyGet without sending the request
21
+ * **此接口用于“最高安全等级”方法。** 您提供第一步中获得的ID,它会返回存储在服务器上的**加密数据**。您需要在自己的客户端中,使用您自己保管的密钥来解密它。
22
+ * 步骤2 (方法一): 获取加密数据
22
23
  */
23
- async getClipzyGetRequestOpts(requestParameters) {
24
+ async getClipzyGetRaw(requestParameters, initOverrides) {
24
25
  if (requestParameters['id'] == null) {
25
26
  throw new runtime.RequiredError('id', 'Required parameter "id" was null or undefined when calling getClipzyGet().');
26
27
  }
@@ -30,20 +31,12 @@ export class ClipzyApi extends runtime.BaseAPI {
30
31
  }
31
32
  const headerParameters = {};
32
33
  let urlPath = `/api/get`;
33
- return {
34
+ const response = await this.request({
34
35
  path: urlPath,
35
36
  method: 'GET',
36
37
  headers: headerParameters,
37
38
  query: queryParameters,
38
- };
39
- }
40
- /**
41
- * **此接口用于“最高安全等级”方法。** 您提供第一步中获得的ID,它会返回存储在服务器上的**加密数据**。您需要在自己的客户端中,使用您自己保管的密钥来解密它。
42
- * 步骤2 (方法一): 获取加密数据
43
- */
44
- async getClipzyGetRaw(requestParameters, initOverrides) {
45
- const requestOptions = await this.getClipzyGetRequestOpts(requestParameters);
46
- const response = await this.request(requestOptions, initOverrides);
39
+ }, initOverrides);
47
40
  return new runtime.JSONApiResponse(response, (jsonValue) => GetClipzyGet200ResponseFromJSON(jsonValue));
48
41
  }
49
42
  /**
@@ -55,9 +48,10 @@ export class ClipzyApi extends runtime.BaseAPI {
55
48
  return await response.value();
56
49
  }
57
50
  /**
58
- * Creates request options for getClipzyRaw without sending the request
51
+ * **此接口用于“方便自动化”方法。** 您提供第一步获得的ID,并附上您自己保管的**解密密钥**作为 `key` 参数。服务器会直接为您解密,并返回纯文本内容。 > [!IMPORTANT] > 查看文档首页的 **cURL 示例**,了解此接口最典型的用法。
52
+ * 步骤2 (方法二): 获取原始文本
59
53
  */
60
- async getClipzyRawRequestOpts(requestParameters) {
54
+ async getClipzyRawRaw(requestParameters, initOverrides) {
61
55
  if (requestParameters['id'] == null) {
62
56
  throw new runtime.RequiredError('id', 'Required parameter "id" was null or undefined when calling getClipzyRaw().');
63
57
  }
@@ -71,20 +65,12 @@ export class ClipzyApi extends runtime.BaseAPI {
71
65
  const headerParameters = {};
72
66
  let urlPath = `/api/raw/{id}`;
73
67
  urlPath = urlPath.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters['id'])));
74
- return {
68
+ const response = await this.request({
75
69
  path: urlPath,
76
70
  method: 'GET',
77
71
  headers: headerParameters,
78
72
  query: queryParameters,
79
- };
80
- }
81
- /**
82
- * **此接口用于“方便自动化”方法。** 您提供第一步获得的ID,并附上您自己保管的**解密密钥**作为 `key` 参数。服务器会直接为您解密,并返回纯文本内容。 > [!IMPORTANT] > 查看文档首页的 **cURL 示例**,了解此接口最典型的用法。
83
- * 步骤2 (方法二): 获取原始文本
84
- */
85
- async getClipzyRawRaw(requestParameters, initOverrides) {
86
- const requestOptions = await this.getClipzyRawRequestOpts(requestParameters);
87
- const response = await this.request(requestOptions, initOverrides);
73
+ }, initOverrides);
88
74
  if (this.isJsonMime(response.headers.get('content-type'))) {
89
75
  return new runtime.JSONApiResponse(response);
90
76
  }
@@ -101,9 +87,10 @@ export class ClipzyApi extends runtime.BaseAPI {
101
87
  return await response.value();
102
88
  }
103
89
  /**
104
- * Creates request options for postClipzyStore without sending the request
90
+ * 这是所有流程的第一步。您的客户端应用需要先在本地准备好 **加密后的数据**,然后调用此接口进行上传。成功后,您会得到一个用于后续操作的唯一ID。 > [!NOTE] > 您发送给此接口的应该是**密文**,而不是原始文本。请参考文档首页的JavaScript示例来了解如何在客户端进行加密。
91
+ * 步骤1:上传加密数据
105
92
  */
106
- async postClipzyStoreRequestOpts(requestParameters) {
93
+ async postClipzyStoreRaw(requestParameters, initOverrides) {
107
94
  if (requestParameters['postClipzyStoreRequest'] == null) {
108
95
  throw new runtime.RequiredError('postClipzyStoreRequest', 'Required parameter "postClipzyStoreRequest" was null or undefined when calling postClipzyStore().');
109
96
  }
@@ -111,21 +98,13 @@ export class ClipzyApi extends runtime.BaseAPI {
111
98
  const headerParameters = {};
112
99
  headerParameters['Content-Type'] = 'application/json';
113
100
  let urlPath = `/api/store`;
114
- return {
101
+ const response = await this.request({
115
102
  path: urlPath,
116
103
  method: 'POST',
117
104
  headers: headerParameters,
118
105
  query: queryParameters,
119
106
  body: PostClipzyStoreRequestToJSON(requestParameters['postClipzyStoreRequest']),
120
- };
121
- }
122
- /**
123
- * 这是所有流程的第一步。您的客户端应用需要先在本地准备好 **加密后的数据**,然后调用此接口进行上传。成功后,您会得到一个用于后续操作的唯一ID。 > [!NOTE] > 您发送给此接口的应该是**密文**,而不是原始文本。请参考文档首页的JavaScript示例来了解如何在客户端进行加密。
124
- * 步骤1:上传加密数据
125
- */
126
- async postClipzyStoreRaw(requestParameters, initOverrides) {
127
- const requestOptions = await this.postClipzyStoreRequestOpts(requestParameters);
128
- const response = await this.request(requestOptions, initOverrides);
107
+ }, initOverrides);
129
108
  return new runtime.JSONApiResponse(response, (jsonValue) => PostClipzyStore200ResponseFromJSON(jsonValue));
130
109
  }
131
110
  /**
@@ -21,10 +21,6 @@ export interface PostConvertJsonOperationRequest {
21
21
  *
22
22
  */
23
23
  export declare class ConvertApi extends runtime.BaseAPI {
24
- /**
25
- * Creates request options for getConvertUnixtime without sending the request
26
- */
27
- getConvertUnixtimeRequestOpts(requestParameters: GetConvertUnixtimeRequest): Promise<runtime.RequestOpts>;
28
24
  /**
29
25
  * 时间戳和日期字符串,哪个用着更顺手?别纠结了,这个接口让你轻松拥有两种格式! ## 功能概述 这是一个非常智能的转换器。你给它一个 Unix 时间戳,它还你一个人类可读的日期时间;你给它一个日期时间字符串,它还你一个 Unix 时间戳。它会自动识别你输入的是哪种格式。 ## 使用须知 这个接口非常智能,能够自动识别输入格式: - **输入时间戳**:支持10位秒级(如 `1672531200`)和13位毫秒级(如 `1672531200000`)。 - **输入日期字符串**:为了确保准确性,推荐使用 `YYYY-MM-DD HH:mm:ss` 标准格式(如 `2023-01-01 08:00:00`)。 > [!TIP] > 无论你输入哪种格式,响应中都会同时包含标准日期字符串和秒级Unix时间戳,方便你按需取用。 ## 错误处理指南 - **400 Bad Request**: 如果你提供的 `time` 参数既不是有效的时间戳,也不是我们支持的日期格式,就会收到这个错误。请检查你的输入值。
30
26
  * 时间戳转换
@@ -35,10 +31,6 @@ export declare class ConvertApi extends runtime.BaseAPI {
35
31
  * 时间戳转换
36
32
  */
37
33
  getConvertUnixtime(requestParameters: GetConvertUnixtimeRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetConvertUnixtime200Response>;
38
- /**
39
- * Creates request options for postConvertJson without sending the request
40
- */
41
- postConvertJsonRequestOpts(requestParameters: PostConvertJsonOperationRequest): Promise<runtime.RequestOpts>;
42
34
  /**
43
35
  * 还在为一团乱麻的 JSON 字符串头疼吗?这个接口能瞬间让它变得井井有条,赏心悦目。 ## 功能概述 你只需要提供一个原始的、可能是压缩过的或者格式混乱的 JSON 字符串,这个 API 就会返回一个经过美化(带标准缩进和换行)的版本。这在调试 API 响应、或者需要在前端界面清晰展示 JSON 数据时非常有用。 ## 使用须知 > [!NOTE] > **请求格式** > 请注意,待格式化的 JSON 字符串需要被包裹在另一个 JSON 对象中,作为 `content` 字段的值提交。具体格式请参考请求体示例。 ## 错误处理指南 - **400 Bad Request**: 最常见的原因是你提供的 `content` 字符串本身不是一个有效的 JSON。请仔细检查括号、引号是否正确闭合,或者有没有多余的逗号等语法错误。
44
36
  * JSON 格式化
@@ -18,9 +18,10 @@ import { GetConvertUnixtime200ResponseFromJSON, PostConvertJson200ResponseFromJS
18
18
  */
19
19
  export class ConvertApi extends runtime.BaseAPI {
20
20
  /**
21
- * Creates request options for getConvertUnixtime without sending the request
21
+ * 时间戳和日期字符串,哪个用着更顺手?别纠结了,这个接口让你轻松拥有两种格式! ## 功能概述 这是一个非常智能的转换器。你给它一个 Unix 时间戳,它还你一个人类可读的日期时间;你给它一个日期时间字符串,它还你一个 Unix 时间戳。它会自动识别你输入的是哪种格式。 ## 使用须知 这个接口非常智能,能够自动识别输入格式: - **输入时间戳**:支持10位秒级(如 `1672531200`)和13位毫秒级(如 `1672531200000`)。 - **输入日期字符串**:为了确保准确性,推荐使用 `YYYY-MM-DD HH:mm:ss` 标准格式(如 `2023-01-01 08:00:00`)。 > [!TIP] > 无论你输入哪种格式,响应中都会同时包含标准日期字符串和秒级Unix时间戳,方便你按需取用。 ## 错误处理指南 - **400 Bad Request**: 如果你提供的 `time` 参数既不是有效的时间戳,也不是我们支持的日期格式,就会收到这个错误。请检查你的输入值。
22
+ * 时间戳转换
22
23
  */
23
- async getConvertUnixtimeRequestOpts(requestParameters) {
24
+ async getConvertUnixtimeRaw(requestParameters, initOverrides) {
24
25
  if (requestParameters['time'] == null) {
25
26
  throw new runtime.RequiredError('time', 'Required parameter "time" was null or undefined when calling getConvertUnixtime().');
26
27
  }
@@ -30,20 +31,12 @@ export class ConvertApi extends runtime.BaseAPI {
30
31
  }
31
32
  const headerParameters = {};
32
33
  let urlPath = `/convert/unixtime`;
33
- return {
34
+ const response = await this.request({
34
35
  path: urlPath,
35
36
  method: 'GET',
36
37
  headers: headerParameters,
37
38
  query: queryParameters,
38
- };
39
- }
40
- /**
41
- * 时间戳和日期字符串,哪个用着更顺手?别纠结了,这个接口让你轻松拥有两种格式! ## 功能概述 这是一个非常智能的转换器。你给它一个 Unix 时间戳,它还你一个人类可读的日期时间;你给它一个日期时间字符串,它还你一个 Unix 时间戳。它会自动识别你输入的是哪种格式。 ## 使用须知 这个接口非常智能,能够自动识别输入格式: - **输入时间戳**:支持10位秒级(如 `1672531200`)和13位毫秒级(如 `1672531200000`)。 - **输入日期字符串**:为了确保准确性,推荐使用 `YYYY-MM-DD HH:mm:ss` 标准格式(如 `2023-01-01 08:00:00`)。 > [!TIP] > 无论你输入哪种格式,响应中都会同时包含标准日期字符串和秒级Unix时间戳,方便你按需取用。 ## 错误处理指南 - **400 Bad Request**: 如果你提供的 `time` 参数既不是有效的时间戳,也不是我们支持的日期格式,就会收到这个错误。请检查你的输入值。
42
- * 时间戳转换
43
- */
44
- async getConvertUnixtimeRaw(requestParameters, initOverrides) {
45
- const requestOptions = await this.getConvertUnixtimeRequestOpts(requestParameters);
46
- const response = await this.request(requestOptions, initOverrides);
39
+ }, initOverrides);
47
40
  return new runtime.JSONApiResponse(response, (jsonValue) => GetConvertUnixtime200ResponseFromJSON(jsonValue));
48
41
  }
49
42
  /**
@@ -55,9 +48,10 @@ export class ConvertApi extends runtime.BaseAPI {
55
48
  return await response.value();
56
49
  }
57
50
  /**
58
- * Creates request options for postConvertJson without sending the request
51
+ * 还在为一团乱麻的 JSON 字符串头疼吗?这个接口能瞬间让它变得井井有条,赏心悦目。 ## 功能概述 你只需要提供一个原始的、可能是压缩过的或者格式混乱的 JSON 字符串,这个 API 就会返回一个经过美化(带标准缩进和换行)的版本。这在调试 API 响应、或者需要在前端界面清晰展示 JSON 数据时非常有用。 ## 使用须知 > [!NOTE] > **请求格式** > 请注意,待格式化的 JSON 字符串需要被包裹在另一个 JSON 对象中,作为 `content` 字段的值提交。具体格式请参考请求体示例。 ## 错误处理指南 - **400 Bad Request**: 最常见的原因是你提供的 `content` 字符串本身不是一个有效的 JSON。请仔细检查括号、引号是否正确闭合,或者有没有多余的逗号等语法错误。
52
+ * JSON 格式化
59
53
  */
60
- async postConvertJsonRequestOpts(requestParameters) {
54
+ async postConvertJsonRaw(requestParameters, initOverrides) {
61
55
  if (requestParameters['postConvertJsonRequest'] == null) {
62
56
  throw new runtime.RequiredError('postConvertJsonRequest', 'Required parameter "postConvertJsonRequest" was null or undefined when calling postConvertJson().');
63
57
  }
@@ -65,21 +59,13 @@ export class ConvertApi extends runtime.BaseAPI {
65
59
  const headerParameters = {};
66
60
  headerParameters['Content-Type'] = 'application/json';
67
61
  let urlPath = `/convert/json`;
68
- return {
62
+ const response = await this.request({
69
63
  path: urlPath,
70
64
  method: 'POST',
71
65
  headers: headerParameters,
72
66
  query: queryParameters,
73
67
  body: PostConvertJsonRequestToJSON(requestParameters['postConvertJsonRequest']),
74
- };
75
- }
76
- /**
77
- * 还在为一团乱麻的 JSON 字符串头疼吗?这个接口能瞬间让它变得井井有条,赏心悦目。 ## 功能概述 你只需要提供一个原始的、可能是压缩过的或者格式混乱的 JSON 字符串,这个 API 就会返回一个经过美化(带标准缩进和换行)的版本。这在调试 API 响应、或者需要在前端界面清晰展示 JSON 数据时非常有用。 ## 使用须知 > [!NOTE] > **请求格式** > 请注意,待格式化的 JSON 字符串需要被包裹在另一个 JSON 对象中,作为 `content` 字段的值提交。具体格式请参考请求体示例。 ## 错误处理指南 - **400 Bad Request**: 最常见的原因是你提供的 `content` 字符串本身不是一个有效的 JSON。请仔细检查括号、引号是否正确闭合,或者有没有多余的逗号等语法错误。
78
- * JSON 格式化
79
- */
80
- async postConvertJsonRaw(requestParameters, initOverrides) {
81
- const requestOptions = await this.postConvertJsonRequestOpts(requestParameters);
82
- const response = await this.request(requestOptions, initOverrides);
68
+ }, initOverrides);
83
69
  return new runtime.JSONApiResponse(response, (jsonValue) => PostConvertJson200ResponseFromJSON(jsonValue));
84
70
  }
85
71
  /**
@@ -14,10 +14,6 @@ import * as runtime from '../runtime';
14
14
  *
15
15
  */
16
16
  export declare class DailyApi extends runtime.BaseAPI {
17
- /**
18
- * Creates request options for getDailyNewsImage without sending the request
19
- */
20
- getDailyNewsImageRequestOpts(): Promise<runtime.RequestOpts>;
21
17
  /**
22
18
  * 想用一张图快速了解天下大事?这个接口为你一键生成今日新闻摘要,非常适合用在早报、数字看板或应用首页等场景。 ## 功能概述 此接口会实时抓取各大平台的热点新闻,并动态地将它们渲染成一张清晰、美观的摘要图片。你调用接口,直接就能得到一张可以展示的图片。 ## 使用须知 调用此接口时,请务必注意以下两点: 1. **响应格式是图片**:接口成功时直接返回 `image/jpeg` 格式的二进制数据,而非 JSON。请确保你的客户端能正确处理二进制流,例如直接在 `<img>` 标签中显示,或保存为 `.jpg` 文件。 2. **设置合理超时**:由于涉及实时新闻抓取和图片渲染,处理过程可能耗时数秒。建议将客户端请求超时时间设置为至少10秒,以防止因等待过久而失败。 > [!IMPORTANT] > 未能正确处理图片响应或超时设置过短,是导致调用失败的最常见原因。
23
19
  * 每日新闻图
@@ -17,26 +17,19 @@ import * as runtime from '../runtime';
17
17
  */
18
18
  export class DailyApi extends runtime.BaseAPI {
19
19
  /**
20
- * Creates request options for getDailyNewsImage without sending the request
20
+ * 想用一张图快速了解天下大事?这个接口为你一键生成今日新闻摘要,非常适合用在早报、数字看板或应用首页等场景。 ## 功能概述 此接口会实时抓取各大平台的热点新闻,并动态地将它们渲染成一张清晰、美观的摘要图片。你调用接口,直接就能得到一张可以展示的图片。 ## 使用须知 调用此接口时,请务必注意以下两点: 1. **响应格式是图片**:接口成功时直接返回 `image/jpeg` 格式的二进制数据,而非 JSON。请确保你的客户端能正确处理二进制流,例如直接在 `<img>` 标签中显示,或保存为 `.jpg` 文件。 2. **设置合理超时**:由于涉及实时新闻抓取和图片渲染,处理过程可能耗时数秒。建议将客户端请求超时时间设置为至少10秒,以防止因等待过久而失败。 > [!IMPORTANT] > 未能正确处理图片响应或超时设置过短,是导致调用失败的最常见原因。
21
+ * 每日新闻图
21
22
  */
22
- async getDailyNewsImageRequestOpts() {
23
+ async getDailyNewsImageRaw(initOverrides) {
23
24
  const queryParameters = {};
24
25
  const headerParameters = {};
25
26
  let urlPath = `/daily/news-image`;
26
- return {
27
+ const response = await this.request({
27
28
  path: urlPath,
28
29
  method: 'GET',
29
30
  headers: headerParameters,
30
31
  query: queryParameters,
31
- };
32
- }
33
- /**
34
- * 想用一张图快速了解天下大事?这个接口为你一键生成今日新闻摘要,非常适合用在早报、数字看板或应用首页等场景。 ## 功能概述 此接口会实时抓取各大平台的热点新闻,并动态地将它们渲染成一张清晰、美观的摘要图片。你调用接口,直接就能得到一张可以展示的图片。 ## 使用须知 调用此接口时,请务必注意以下两点: 1. **响应格式是图片**:接口成功时直接返回 `image/jpeg` 格式的二进制数据,而非 JSON。请确保你的客户端能正确处理二进制流,例如直接在 `<img>` 标签中显示,或保存为 `.jpg` 文件。 2. **设置合理超时**:由于涉及实时新闻抓取和图片渲染,处理过程可能耗时数秒。建议将客户端请求超时时间设置为至少10秒,以防止因等待过久而失败。 > [!IMPORTANT] > 未能正确处理图片响应或超时设置过短,是导致调用失败的最常见原因。
35
- * 每日新闻图
36
- */
37
- async getDailyNewsImageRaw(initOverrides) {
38
- const requestOptions = await this.getDailyNewsImageRequestOpts();
39
- const response = await this.request(requestOptions, initOverrides);
32
+ }, initOverrides);
40
33
  return new runtime.BlobApiResponse(response);
41
34
  }
42
35
  /**
@@ -27,10 +27,6 @@ export interface PostSensitiveWordQuickCheckOperationRequest {
27
27
  *
28
28
  */
29
29
  export declare class DefaultApi extends runtime.BaseAPI {
30
- /**
31
- * Creates request options for getSearchEngines without sending the request
32
- */
33
- getSearchEnginesRequestOpts(): Promise<runtime.RequestOpts>;
34
30
  /**
35
31
  * 获取 UAPI Pro Search 引擎的详细信息,包括支持的功能特性、参数限制和使用说明。 ## 功能概述 此接口返回搜索引擎的完整配置信息,你可以用它来: - 了解搜索引擎支持哪些功能(如站内搜索、文件类型过滤等) - 获取参数的默认值和限制范围 - 查看当前引擎版本和可用状态 适合在应用初始化时调用,或用于动态配置搜索界面。
36
32
  * 搜索引擎配置
@@ -41,10 +37,6 @@ export declare class DefaultApi extends runtime.BaseAPI {
41
37
  * 搜索引擎配置
42
38
  */
43
39
  getSearchEngines(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetSearchEngines200Response>;
44
- /**
45
- * Creates request options for getSensitiveWordAnalyzeQuery without sending the request
46
- */
47
- getSensitiveWordAnalyzeQueryRequestOpts(requestParameters: GetSensitiveWordAnalyzeQueryRequest): Promise<runtime.RequestOpts>;
48
40
  /**
49
41
  * 通过URL查询参数分析单个关键词,便于GET请求调用。
50
42
  * 敏感词分析 (GET)
@@ -55,10 +47,6 @@ export declare class DefaultApi extends runtime.BaseAPI {
55
47
  * 敏感词分析 (GET)
56
48
  */
57
49
  getSensitiveWordAnalyzeQuery(requestParameters: GetSensitiveWordAnalyzeQueryRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PostSensitiveWordAnalyze200Response>;
58
- /**
59
- * Creates request options for postSearchAggregate without sending the request
60
- */
61
- postSearchAggregateRequestOpts(requestParameters: PostSearchAggregateOperationRequest): Promise<runtime.RequestOpts>;
62
50
  /**
63
51
  * 想在你的应用中集成搜索功能?我们提供了一个强大的搜索引擎API,让你可以轻松实现实时网页搜索。 ## 功能概述 UAPI Pro Search 是一个智能搜索引擎,采用机器学习算法对搜索结果进行智能排序,确保最相关的内容排在前面。你可以用它搜索任何关键词,也可以限定在特定网站或特定文件类型中搜索。 - **实时网页搜索**: 毫秒级响应,快速返回搜索结果 - **智能排序**: 采用机器学习回归排序算法,结果更精准 - **时间排序**: 支持按发布时间排序,获取最新内容 - **时间范围过滤**: 支持按天/周/月/年过滤结果 - **站内搜索**: 支持 `site:` 操作符,在指定网站内搜索 - **文件类型过滤**: 支持 `filetype:` 操作符,快速找到 PDF、Word 等特定格式文件
64
52
  * 智能搜索
@@ -69,10 +57,6 @@ export declare class DefaultApi extends runtime.BaseAPI {
69
57
  * 智能搜索
70
58
  */
71
59
  postSearchAggregate(requestParameters: PostSearchAggregateOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PostSearchAggregate200Response>;
72
- /**
73
- * Creates request options for postSensitiveWordAnalyze without sending the request
74
- */
75
- postSensitiveWordAnalyzeRequestOpts(requestParameters: PostSensitiveWordAnalyzeOperationRequest): Promise<runtime.RequestOpts>;
76
60
  /**
77
61
  * 分析单个或多个关键词的敏感程度,返回标准化风险标签与置信度结果。 ## 功能概述 - **模型驱动**: 使用先进的分析模型进行语义分析。 - **高性能**: 采用三级缓存策略(持久化存储 → 统一缓存 → 模型分析),确保高频请求的响应速度。 - **并发支持**: 支持批量并发处理,单次最多可分析100个关键词。 - **输入限制**: 单条关键词最多 1,000 字符,总字符数最多 20,000。 - **标准标签**: 返回 `label` 字段,明确区分 `sensitive` 与 `normal`。 - **分类清晰**: 返回 `category` 字段,用于标识具体风险类别。 - **置信度输出**: 返回 `confidence` 字段,范围为0.0到1.0。 ## 响应字段说明 | 字段 | 类型 | 说明 | |------|------|------| | `results` | array | 分析结果对象的数组。 | | `results[].k` | string | 您在请求中提供的原始关键词。 | | `results[].label` | string | 核心判断字段:`sensitive`(敏感)、`normal`(正常)。 | | `results[].category` | string | 风险分类:`safe`(安全)、`threat`(威胁)、`porn`(色情)、`fraud`(欺诈)、`insult`(辱骂)。 | | `results[].confidence` | number | 当前分类的置信度,范围0.0到1.0。 | | `total` | integer | 本次请求成功分析的关键词总数。 |
78
62
  * 分析敏感词
@@ -83,10 +67,6 @@ export declare class DefaultApi extends runtime.BaseAPI {
83
67
  * 分析敏感词
84
68
  */
85
69
  postSensitiveWordAnalyze(requestParameters: PostSensitiveWordAnalyzeOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<PostSensitiveWordAnalyze200Response>;
86
- /**
87
- * Creates request options for postSensitiveWordQuickCheck without sending the request
88
- */
89
- postSensitiveWordQuickCheckRequestOpts(requestParameters: PostSensitiveWordQuickCheckOperationRequest): Promise<runtime.RequestOpts>;
90
70
  /**
91
71
  * 在你的社区或应用中,需要来过滤掉不和谐的声音吗?这个接口可以助你一臂之力。 ## 功能概述 我们对敏感词检测接口进行了大幅升级,现在采用高效的 **Aho-Corasick 算法**,实现了多模式字符串匹配。这意味着你不再需要手动编写复杂的正则表达式,系统会自动高效地检测出文本中的所有敏感词。 ### 主要特性 - **高性能算法**:基于 Aho-Corasick 算法,单次扫描即可检测多个敏感词模式 - **简繁体支持**:自动识别和处理简体中文、繁体中文内容 - **多模匹配**:无需编写正则表达式,系统内置智能匹配逻辑 - **快速响应**:相比传统方法,检测速度显著提升 无论是论坛、社交平台还是评论系统,这个接口都能帮你快速构建内容审核功能。
92
72
  * 敏感词检测(快速)
@@ -18,26 +18,19 @@ import { GetSearchEngines200ResponseFromJSON, PostSearchAggregate200ResponseFrom
18
18
  */
19
19
  export class DefaultApi extends runtime.BaseAPI {
20
20
  /**
21
- * Creates request options for getSearchEngines without sending the request
21
+ * 获取 UAPI Pro Search 引擎的详细信息,包括支持的功能特性、参数限制和使用说明。 ## 功能概述 此接口返回搜索引擎的完整配置信息,你可以用它来: - 了解搜索引擎支持哪些功能(如站内搜索、文件类型过滤等) - 获取参数的默认值和限制范围 - 查看当前引擎版本和可用状态 适合在应用初始化时调用,或用于动态配置搜索界面。
22
+ * 搜索引擎配置
22
23
  */
23
- async getSearchEnginesRequestOpts() {
24
+ async getSearchEnginesRaw(initOverrides) {
24
25
  const queryParameters = {};
25
26
  const headerParameters = {};
26
27
  let urlPath = `/search/engines`;
27
- return {
28
+ const response = await this.request({
28
29
  path: urlPath,
29
30
  method: 'GET',
30
31
  headers: headerParameters,
31
32
  query: queryParameters,
32
- };
33
- }
34
- /**
35
- * 获取 UAPI Pro Search 引擎的详细信息,包括支持的功能特性、参数限制和使用说明。 ## 功能概述 此接口返回搜索引擎的完整配置信息,你可以用它来: - 了解搜索引擎支持哪些功能(如站内搜索、文件类型过滤等) - 获取参数的默认值和限制范围 - 查看当前引擎版本和可用状态 适合在应用初始化时调用,或用于动态配置搜索界面。
36
- * 搜索引擎配置
37
- */
38
- async getSearchEnginesRaw(initOverrides) {
39
- const requestOptions = await this.getSearchEnginesRequestOpts();
40
- const response = await this.request(requestOptions, initOverrides);
33
+ }, initOverrides);
41
34
  return new runtime.JSONApiResponse(response, (jsonValue) => GetSearchEngines200ResponseFromJSON(jsonValue));
42
35
  }
43
36
  /**
@@ -49,9 +42,10 @@ export class DefaultApi extends runtime.BaseAPI {
49
42
  return await response.value();
50
43
  }
51
44
  /**
52
- * Creates request options for getSensitiveWordAnalyzeQuery without sending the request
45
+ * 通过URL查询参数分析单个关键词,便于GET请求调用。
46
+ * 敏感词分析 (GET)
53
47
  */
54
- async getSensitiveWordAnalyzeQueryRequestOpts(requestParameters) {
48
+ async getSensitiveWordAnalyzeQueryRaw(requestParameters, initOverrides) {
55
49
  if (requestParameters['keyword'] == null) {
56
50
  throw new runtime.RequiredError('keyword', 'Required parameter "keyword" was null or undefined when calling getSensitiveWordAnalyzeQuery().');
57
51
  }
@@ -61,20 +55,12 @@ export class DefaultApi extends runtime.BaseAPI {
61
55
  }
62
56
  const headerParameters = {};
63
57
  let urlPath = `/sensitive-word/analyze-query`;
64
- return {
58
+ const response = await this.request({
65
59
  path: urlPath,
66
60
  method: 'GET',
67
61
  headers: headerParameters,
68
62
  query: queryParameters,
69
- };
70
- }
71
- /**
72
- * 通过URL查询参数分析单个关键词,便于GET请求调用。
73
- * 敏感词分析 (GET)
74
- */
75
- async getSensitiveWordAnalyzeQueryRaw(requestParameters, initOverrides) {
76
- const requestOptions = await this.getSensitiveWordAnalyzeQueryRequestOpts(requestParameters);
77
- const response = await this.request(requestOptions, initOverrides);
63
+ }, initOverrides);
78
64
  return new runtime.JSONApiResponse(response, (jsonValue) => PostSensitiveWordAnalyze200ResponseFromJSON(jsonValue));
79
65
  }
80
66
  /**
@@ -86,9 +72,10 @@ export class DefaultApi extends runtime.BaseAPI {
86
72
  return await response.value();
87
73
  }
88
74
  /**
89
- * Creates request options for postSearchAggregate without sending the request
75
+ * 想在你的应用中集成搜索功能?我们提供了一个强大的搜索引擎API,让你可以轻松实现实时网页搜索。 ## 功能概述 UAPI Pro Search 是一个智能搜索引擎,采用机器学习算法对搜索结果进行智能排序,确保最相关的内容排在前面。你可以用它搜索任何关键词,也可以限定在特定网站或特定文件类型中搜索。 - **实时网页搜索**: 毫秒级响应,快速返回搜索结果 - **智能排序**: 采用机器学习回归排序算法,结果更精准 - **时间排序**: 支持按发布时间排序,获取最新内容 - **时间范围过滤**: 支持按天/周/月/年过滤结果 - **站内搜索**: 支持 `site:` 操作符,在指定网站内搜索 - **文件类型过滤**: 支持 `filetype:` 操作符,快速找到 PDF、Word 等特定格式文件
76
+ * 智能搜索
90
77
  */
91
- async postSearchAggregateRequestOpts(requestParameters) {
78
+ async postSearchAggregateRaw(requestParameters, initOverrides) {
92
79
  if (requestParameters['postSearchAggregateRequest'] == null) {
93
80
  throw new runtime.RequiredError('postSearchAggregateRequest', 'Required parameter "postSearchAggregateRequest" was null or undefined when calling postSearchAggregate().');
94
81
  }
@@ -96,21 +83,13 @@ export class DefaultApi extends runtime.BaseAPI {
96
83
  const headerParameters = {};
97
84
  headerParameters['Content-Type'] = 'application/json';
98
85
  let urlPath = `/search/aggregate`;
99
- return {
86
+ const response = await this.request({
100
87
  path: urlPath,
101
88
  method: 'POST',
102
89
  headers: headerParameters,
103
90
  query: queryParameters,
104
91
  body: PostSearchAggregateRequestToJSON(requestParameters['postSearchAggregateRequest']),
105
- };
106
- }
107
- /**
108
- * 想在你的应用中集成搜索功能?我们提供了一个强大的搜索引擎API,让你可以轻松实现实时网页搜索。 ## 功能概述 UAPI Pro Search 是一个智能搜索引擎,采用机器学习算法对搜索结果进行智能排序,确保最相关的内容排在前面。你可以用它搜索任何关键词,也可以限定在特定网站或特定文件类型中搜索。 - **实时网页搜索**: 毫秒级响应,快速返回搜索结果 - **智能排序**: 采用机器学习回归排序算法,结果更精准 - **时间排序**: 支持按发布时间排序,获取最新内容 - **时间范围过滤**: 支持按天/周/月/年过滤结果 - **站内搜索**: 支持 `site:` 操作符,在指定网站内搜索 - **文件类型过滤**: 支持 `filetype:` 操作符,快速找到 PDF、Word 等特定格式文件
109
- * 智能搜索
110
- */
111
- async postSearchAggregateRaw(requestParameters, initOverrides) {
112
- const requestOptions = await this.postSearchAggregateRequestOpts(requestParameters);
113
- const response = await this.request(requestOptions, initOverrides);
92
+ }, initOverrides);
114
93
  return new runtime.JSONApiResponse(response, (jsonValue) => PostSearchAggregate200ResponseFromJSON(jsonValue));
115
94
  }
116
95
  /**
@@ -122,9 +101,10 @@ export class DefaultApi extends runtime.BaseAPI {
122
101
  return await response.value();
123
102
  }
124
103
  /**
125
- * Creates request options for postSensitiveWordAnalyze without sending the request
104
+ * 分析单个或多个关键词的敏感程度,返回标准化风险标签与置信度结果。 ## 功能概述 - **模型驱动**: 使用先进的分析模型进行语义分析。 - **高性能**: 采用三级缓存策略(持久化存储 统一缓存 → 模型分析),确保高频请求的响应速度。 - **并发支持**: 支持批量并发处理,单次最多可分析100个关键词。 - **输入限制**: 单条关键词最多 1,000 字符,总字符数最多 20,000。 - **标准标签**: 返回 `label` 字段,明确区分 `sensitive` 与 `normal`。 - **分类清晰**: 返回 `category` 字段,用于标识具体风险类别。 - **置信度输出**: 返回 `confidence` 字段,范围为0.0到1.0。 ## 响应字段说明 | 字段 | 类型 | 说明 | |------|------|------| | `results` | array | 分析结果对象的数组。 | | `results[].k` | string | 您在请求中提供的原始关键词。 | | `results[].label` | string | 核心判断字段:`sensitive`(敏感)、`normal`(正常)。 | | `results[].category` | string | 风险分类:`safe`(安全)、`threat`(威胁)、`porn`(色情)、`fraud`(欺诈)、`insult`(辱骂)。 | | `results[].confidence` | number | 当前分类的置信度,范围0.0到1.0。 | | `total` | integer | 本次请求成功分析的关键词总数。 |
105
+ * 分析敏感词
126
106
  */
127
- async postSensitiveWordAnalyzeRequestOpts(requestParameters) {
107
+ async postSensitiveWordAnalyzeRaw(requestParameters, initOverrides) {
128
108
  if (requestParameters['postSensitiveWordAnalyzeRequest'] == null) {
129
109
  throw new runtime.RequiredError('postSensitiveWordAnalyzeRequest', 'Required parameter "postSensitiveWordAnalyzeRequest" was null or undefined when calling postSensitiveWordAnalyze().');
130
110
  }
@@ -132,21 +112,13 @@ export class DefaultApi extends runtime.BaseAPI {
132
112
  const headerParameters = {};
133
113
  headerParameters['Content-Type'] = 'application/json';
134
114
  let urlPath = `/sensitive-word/analyze`;
135
- return {
115
+ const response = await this.request({
136
116
  path: urlPath,
137
117
  method: 'POST',
138
118
  headers: headerParameters,
139
119
  query: queryParameters,
140
120
  body: PostSensitiveWordAnalyzeRequestToJSON(requestParameters['postSensitiveWordAnalyzeRequest']),
141
- };
142
- }
143
- /**
144
- * 分析单个或多个关键词的敏感程度,返回标准化风险标签与置信度结果。 ## 功能概述 - **模型驱动**: 使用先进的分析模型进行语义分析。 - **高性能**: 采用三级缓存策略(持久化存储 → 统一缓存 → 模型分析),确保高频请求的响应速度。 - **并发支持**: 支持批量并发处理,单次最多可分析100个关键词。 - **输入限制**: 单条关键词最多 1,000 字符,总字符数最多 20,000。 - **标准标签**: 返回 `label` 字段,明确区分 `sensitive` 与 `normal`。 - **分类清晰**: 返回 `category` 字段,用于标识具体风险类别。 - **置信度输出**: 返回 `confidence` 字段,范围为0.0到1.0。 ## 响应字段说明 | 字段 | 类型 | 说明 | |------|------|------| | `results` | array | 分析结果对象的数组。 | | `results[].k` | string | 您在请求中提供的原始关键词。 | | `results[].label` | string | 核心判断字段:`sensitive`(敏感)、`normal`(正常)。 | | `results[].category` | string | 风险分类:`safe`(安全)、`threat`(威胁)、`porn`(色情)、`fraud`(欺诈)、`insult`(辱骂)。 | | `results[].confidence` | number | 当前分类的置信度,范围0.0到1.0。 | | `total` | integer | 本次请求成功分析的关键词总数。 |
145
- * 分析敏感词
146
- */
147
- async postSensitiveWordAnalyzeRaw(requestParameters, initOverrides) {
148
- const requestOptions = await this.postSensitiveWordAnalyzeRequestOpts(requestParameters);
149
- const response = await this.request(requestOptions, initOverrides);
121
+ }, initOverrides);
150
122
  return new runtime.JSONApiResponse(response, (jsonValue) => PostSensitiveWordAnalyze200ResponseFromJSON(jsonValue));
151
123
  }
152
124
  /**
@@ -158,9 +130,10 @@ export class DefaultApi extends runtime.BaseAPI {
158
130
  return await response.value();
159
131
  }
160
132
  /**
161
- * Creates request options for postSensitiveWordQuickCheck without sending the request
133
+ * 在你的社区或应用中,需要来过滤掉不和谐的声音吗?这个接口可以助你一臂之力。 ## 功能概述 我们对敏感词检测接口进行了大幅升级,现在采用高效的 **Aho-Corasick 算法**,实现了多模式字符串匹配。这意味着你不再需要手动编写复杂的正则表达式,系统会自动高效地检测出文本中的所有敏感词。 ### 主要特性 - **高性能算法**:基于 Aho-Corasick 算法,单次扫描即可检测多个敏感词模式 - **简繁体支持**:自动识别和处理简体中文、繁体中文内容 - **多模匹配**:无需编写正则表达式,系统内置智能匹配逻辑 - **快速响应**:相比传统方法,检测速度显著提升 无论是论坛、社交平台还是评论系统,这个接口都能帮你快速构建内容审核功能。
134
+ * 敏感词检测(快速)
162
135
  */
163
- async postSensitiveWordQuickCheckRequestOpts(requestParameters) {
136
+ async postSensitiveWordQuickCheckRaw(requestParameters, initOverrides) {
164
137
  if (requestParameters['postSensitiveWordQuickCheckRequest'] == null) {
165
138
  throw new runtime.RequiredError('postSensitiveWordQuickCheckRequest', 'Required parameter "postSensitiveWordQuickCheckRequest" was null or undefined when calling postSensitiveWordQuickCheck().');
166
139
  }
@@ -168,21 +141,13 @@ export class DefaultApi extends runtime.BaseAPI {
168
141
  const headerParameters = {};
169
142
  headerParameters['Content-Type'] = 'application/json';
170
143
  let urlPath = `/text/profanitycheck`;
171
- return {
144
+ const response = await this.request({
172
145
  path: urlPath,
173
146
  method: 'POST',
174
147
  headers: headerParameters,
175
148
  query: queryParameters,
176
149
  body: PostSensitiveWordQuickCheckRequestToJSON(requestParameters['postSensitiveWordQuickCheckRequest']),
177
- };
178
- }
179
- /**
180
- * 在你的社区或应用中,需要来过滤掉不和谐的声音吗?这个接口可以助你一臂之力。 ## 功能概述 我们对敏感词检测接口进行了大幅升级,现在采用高效的 **Aho-Corasick 算法**,实现了多模式字符串匹配。这意味着你不再需要手动编写复杂的正则表达式,系统会自动高效地检测出文本中的所有敏感词。 ### 主要特性 - **高性能算法**:基于 Aho-Corasick 算法,单次扫描即可检测多个敏感词模式 - **简繁体支持**:自动识别和处理简体中文、繁体中文内容 - **多模匹配**:无需编写正则表达式,系统内置智能匹配逻辑 - **快速响应**:相比传统方法,检测速度显著提升 无论是论坛、社交平台还是评论系统,这个接口都能帮你快速构建内容审核功能。
181
- * 敏感词检测(快速)
182
- */
183
- async postSensitiveWordQuickCheckRaw(requestParameters, initOverrides) {
184
- const requestOptions = await this.postSensitiveWordQuickCheckRequestOpts(requestParameters);
185
- const response = await this.request(requestOptions, initOverrides);
150
+ }, initOverrides);
186
151
  return new runtime.JSONApiResponse(response, (jsonValue) => PostSensitiveWordQuickCheck200ResponseFromJSON(jsonValue));
187
152
  }
188
153
  /**