Note Why?
- 阿里云的客户端质量非常的差
- @alicloud/openapi-client 一个文件、一个包
- 19 个依赖
- 最基础的依赖,可能要做非常多的兼容,所有都揉在一起,导致包很大 - 180kB/ gzip 42kB
- 代码质量非常差,非常多 Utils.xyz 调用
- @alicloud/openapi-utils 一个文件、一个包
- 阿里云的 API 文档质量非常的差
- 例如 https://help.aliyun.com/zh/sdk/product-overview/v3-request-structure-and-signature
- 签名文档里的 Demo 都对不上,最终产出的的 SignedHeaders 和 Signature 不一致
- 导致怀疑是自己的问题
- API explorer 质量差 - 我就只想要看到 curl 怎么执行的,但实际看不到请求目标、URL 、头 等信息
- 返回的 DEBUG 链接当前用户 也打不开
- 我只想要发起一些简单的请求,按需封装结构,请求简单透明,客户端易用
import { request } from '@wener/cleint/alicloud'; console.log( await request({ endpoint: 'dytnsapi.aliyuncs.com', action: 'QueryTagInfoBySelection', version: '2020-02-17', accessKeyId: process.env.ALIBABA_CLOUD_ACCESS_KEY_ID, accessKeySecret: process.env.ALIBABA_CLOUD_ACCESS_KEY_SECRET, }), );
import { AliCloudClient } from '@wener/cleint/alicloud'; const aliCloudClient = new AliCloudClient({ accessKeyId: process.env.ALIBABA_CLOUD_ACCESS_KEY_ID, accessKeySecret: process.env.ALIBABA_CLOUD_ACCESS_KEY_SECRET, }); const api = aliCloudClient.getServiceClient({ // 输入 product 和 version 会有补全 // 更多的接口待生成 product: 'Dytnsapi', version: '2020-02-17', }); console.log(await api.QueryTagListPage({}));
![]() | 1 entro 2023-11-13 11:51:52 +08:00 支持下 BTW ,@wener/cleint 的 cleint 看的难受 |
3 ByteCat 2023-11-13 13:52:20 +08:00 不错,支持一下,还是 TS 写的,上次用阿里 SDK 被恶心到了,直接换了腾讯 |