@droz-js/sdk

中文文档
0.26.52发布于 2026/11/13CommonJS近 30 天下载 1万

德罗兹SDK

中文使用文档
文档目录7 节
  1. 设置( 需要)
  2. 全局错误处理
  3. 网页
  4. 示例 AsyncIterator
  5. 可用磁盘
  6. 德罗斯·内克索
  7. 德罗兹聊天

时间轴:

设置( 需要)

要设置您需要告诉租户的Sdk和认证方法,需要租户. 你必须运行这个 先打个电话 如果你不安排房客,SDK会失败的.

import { DrozSdk } from '@droz-js/sdk';

DrozSdk.forTenant('dev').withAuthorization('Basic', 'username', 'password');

也可以分成两步

import { DrozSdk } from '@droz-js/sdk';

// first step (required)
DrozSdk.forTenant('dev');

// (optional) later when you have the authentication token you can set it and it will automatically be used in the new requests
DrozSdk.withAuthorization('Basic', 'username', 'password');

全局错误处理

Sdk 会给每个失败的请求投出一个错误, 但你也可以通过使用 on 方法.

import { DrozSdk } from '@droz-js/sdk';

DrozSdk.on('error', (error) => {
  console.log(error);
});

发送的错误都是类型 SdkError 并包含下列属性:

  • message: 服务器发送的原始错误消息;
  • statusCode:与http状态代码相类似并显示出错的类别,400个坏请求,403被禁, 404没有找到..;
  • errorCode: 错误的唯一标识符,这对i18n友好消息有用;

网页

对于我们使用的 Websocket graphql-ws 协议与 AsyncIterator 处理订阅。 SDK 将自动 处理您的连接和重接, 见 https://the-guild.dev/graphql/ws/recipes#客户端-usage- with-asynciterator (英语) 关于如何使用 AsyncIterator。 。 。 .

示例 AsyncIterator

import { DrozSdk } from '@droz-js/sdk';
import { DrozChat } from '@droz-js/sdk/drozchat';

DrozSdk.forTenant('dev');

const chat = new DrozChat();
const iterable = chat.onTicketInQueue();
for await (const result of iterable) {
  console.log(result);
}

反应开发者

import { DrozSdk } from '@droz-js/sdk';
import { DrozChat } from '@droz-js/sdk/drozchat';

DrozSdk.forTenant('dev');

function useOnTicketInQueue() {
  const chat = new DrozChat();
  const [tickets, setTickets] = useState<Ticket[]>([]);

  useEffect(() => {
    const subscription = chat.onTicketInQueue();

    // YES I KNOW, REACT SUCKS
    (async () => {
      // attention! this is just an example what you do with the result is up to you
      for await (const each of subscription) setTickets(tickets => [...tickets, each]);
    })();

    // this is required to close the subscription when the component unmounts
    return () => subscription.return();
  }, []);
}

可用磁盘

德罗斯·内克索

import { DrozNexo } from '@droz-js/sdk/droznexo';

德罗兹聊天

import { DrozChat } from '@droz-js/sdk/drozchat';

版本与发布记录

@droz-js/sdk 共发布 480 个版本,首次发布于 2023/10/07;过去 12 个月发布了 241 个版本。

版本发布日期距今
0.26.52latest2026/11/13今天
0.26.512026/11/121 天前
0.26.502026/11/121 天前
0.26.492026/11/121 天前
0.26.482026/11/112 天前
0.26.472026/11/103 天前

关于 @droz-js/sdk 的常见问题

@droz-js/sdk 是什么?

德罗兹SDK

如何安装 @droz-js/sdk?

在项目目录运行 npm install @droz-js/sdk,或使用 pnpm add / yarn add / bun add。

@droz-js/sdk 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/droz-js__sdk 是否存在。

@droz-js/sdk 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@droz-js/sdk 可以商用吗?

@droz-js/sdk 使用 未声明 许可。package.json 没有声明许可证。没有许可证的代码默认保留全部权利,商用前请联系作者或查看仓库中的 LICENSE 文件。以上为概括,不构成法律意见,请以许可原文为准。

@droz-js/sdk 的下载量有多少?

根据 npm 官方下载统计,@droz-js/sdk 在 2026/10/13 – 2026/11/11 这 30 天内被下载 10,461 次,日均约 349 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@droz-js/sdk 还在维护吗?

最新版本 0.26.52 发布于 2026/11/13(今天);至今共发布 480 个版本,其中过去 12 个月发布了 241 个;首次发布于 2023/10/07。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。