什么是 @8base/subscriptions-transport-ws
@8base/subscriptions-transport-ws 是一个专门用于 GraphQL 订阅的 npm 包。它可以帮助前端开发者更好地使用 GraphQL 订阅,提供了更为方便的使用方式和更多的功能。
使用方法
安装 @8base/subscriptions-transport-ws
在命令行中使用以下命令安装 @8base/subscriptions-transport-ws:
npm install @8base/subscriptions-transport-ws
使用示例
-- -------------------- ---- ------- ------ - ------------------ - ---- ------------------------------------ ------ --- ---- -------------- ----- ------------------ - --- ---------------------------------------------- - ---------- ----- --- ----- ------------ - ------------------ ---------- ------ ---- ------------ - ---------------- - ------------ --------- -- - ---- - -- ----- --------- - - - -- -- ------------ ----- ---- -- - ------------------ -- ---
API
SubscriptionClient
SubscriptionClient 是@8base/subscriptions-transport-ws 插件导出的关键类。
import { SubscriptionClient } from '@8base/subscriptions-transport-ws';
SubscriptionClient#constructor
SubscriptionClient 构造函数的接口如下:
参数 | 类型 | 描述 |
---|---|---|
endpoint | String | GraphQL WebSocket 的 URL 地址 |
options?.timeout | Number | 连接超时的毫秒数,默认为 20000ms |
options?.reconnect | Boolean | 是否自动重新连接,默认为 true。 |
const subscriptionClient = new SubscriptionClient( "wss://api.8base.com/xxxxxxxxxxx", { timeout: 20000, reconnect: true, } );
SubscriptionClient#request
SubscriptionClient#request 方法是在客户端创建 GraphQL 订阅的主要方式。
-- -------------------- ---- ------- ----- ------------ - ---------------------------- ------ ---- ------------ - ---------------- - ------------ --------- -- - ---- - -- ----- --------- - - --- ---
SubscriptionClient#subscribe
SubscriptionClient#subscribe 方法将创建用于处理订阅的实时数据的 N 极坐标。
const subscription = subscriptionClient.subscribe({ next: data => { console.log(data); } });
总结
@8base/subscriptions-transport-ws 提供了更为方便的使用方式和更多的功能,可以帮助前端开发者更好地使用 GraphQL 订阅。在使用时只需按照文档指引安装和使用,并且可以根据自己需求对参数进行设置。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5eedab82b5cbfe1ea06107b4