扣子 Node.js SDK 是扣子官方提供的开发工具包,旨在帮助开发者轻松将扣子的 AI 能力集成到应用程序中。Node.js SDK 适合各类开发者使用,无论是初学者还是专业开发人员,都能快速上手并实现所需功能。
以下是 Node.js SDK 的一些核心特性,帮助你更好地了解其功能和优势:
Node.js SDK 具备以下技术优势:
访问 GitHub 获取 Node.js SDK 源码。
注意
从扣子 GitHub 仓库获取的源码和示例代码中,base_url 默认设置为域名 COZE_COM_BASE_URL,使用源码前应手动将其修改为域名 COZE_CN_BASE_URL。
Node.js SDK 提供各种授权方式、各种使用方式的示例代码,便于开发者直接参考使用。
说明
常见场景的示例代码及说明如下:
|
模块 |
示例文件 |
说明 |
|---|---|---|
|
授权 |
通过个人访问密钥实现 OpenAPI 鉴权。 |
|
|
通过 OAuth 授权码方式实现 OpenAPI 鉴权。 |
||
|
通过 OAuth JWT 方式实现 OpenAPI 鉴权。 |
||
|
通过 OAuth JWT 渠道方式实现 OpenAPI 鉴权 |
||
|
通过 OAuth PKCE 方式实现 OpenAPI 鉴权。 |
||
|
通过 OAuth 设备码方式实现 OpenAPI 鉴权。 |
||
|
对话 |
发起对话,包含:
|
|
|
发起对话,对话中上传文件,并发送多模态内容。 |
||
|
端插件。 |
||
|
工作流 |
执行工作流,包含:
|
|
|
智能体管理 |
智能体操作,包含:
|
|
|
工作空间 |
查询工作空间列表。 |
|
|
文件上传 |
文件上传,包含:
|
|
|
会话与消息管理 |
会话与消息管理,包含:
|
|
|
知识库管理 |
知识库管理,包含:
|
|
|
变量 |
变量管理,包含:
|
|
|
语音 |
ASR、TTS 与音色相关功能,包含:
|
|
|
WebSocket语音 |
WebSocket 语音通话。 |
|
|
语音合成,将文本转为语音,并将生成的语音保存为音频文件。 |
||
|
语音识别,将指定音频文件转录为文本。 |
||
|
声纹识别 |
声纹识别,包含
|
|
|
复制模板 |
复制商店中的模板到指定工作空间。 |
|
|
用户 |
获取当前用户信息,如用户 ID、用户名等。 |
|
|
代理 |
通过代理服务器访问扣子 API。 |
|
|
异常处理 |
处理 API 异常。 |
|
|
网络请求配置 |
支持大部分 axios 配置。 |
Node.js SDK 提供了完善的异常处理机制,所有异常类都继承自 CozeError 基类。当 API 调用失败时,Node.js SDK 会抛出相应的异常类型,便于开发者进行错误处理和调试。Node.js SDK 封装了以下常见的异常类型:
|
异常类 |
HTTP 状态码 |
说明 |
|---|---|---|
|
BadRequestError |
400 |
请求参数错误。通常是参数格式、类型或值域不符合要求。 |
|
AuthenticationError |
401 |
身份认证失败,可能是 token 无效或已过期。 |
|
PermissionDeniedError |
403 |
权限不足,当前身份无权访问目标资源。 |
|
NotFoundError |
404 |
资源不存在,请求的 API 接口或资源未找到。 |
|
RateLimitError |
429 |
请求频率超限,需要降低 API 调用频率。 |
|
TimeoutError |
408 |
请求超时,服务器在预期时间内未收到完整请求。 |
|
GatewayError |
502 |
网关错误,上游服务暂时不可用。 |
|
InternalServerError |
500 |
服务器内部错误,平台服务出现异常。 |