Pub Sub 的不同实现是不是相互配合?
Posted
技术标签:
【中文标题】Pub Sub 的不同实现是不是相互配合?【英文标题】:Does the differents implementations of PubSub work with each other?Pub Sub 的不同实现是否相互配合? 【发布时间】:2021-08-28 12:17:58 【问题描述】:apollo-server、apollo-server-express 和 Type-graphql 提供不同的 PubSub 实现,我一直在尝试使用 Apollo-Server 来触发使用 Type-graphql 完成的订阅。
这是我的 Type-Graphql 订阅解析器:
@Resolver()
export class TransactionsSubscription
@Subscription(
topics: ( context: account ) =>
return account.id;
,
)
newNotifications(
@Root("data") data: Notification,
): Notification
return data;
这是我的 TypeORM 事件订阅者:
@EventSubscriber()
export class TransactionSubscriber implements EntitySubscriberInterface<Transaction>
listenTo()
return Transaction;
async afterInsert(event: InsertEvent<Transaction>)
const account = await Account.findOne(event.entity.accountId);
if (!account) throw Error("Invalid request");
const notification = await NotificationRepository().createTransaction(account);
pubsub.publish(event.entity.accountId.toString(), notification);
console.log(notification);
我的问题是,是否可以使用 Apollo-Server 的 pubsub 来触发 Type-graphQL 订阅?
【问题讨论】:
【参考方案1】:是否可以使用 Apollo-Server 的 pubsub 来触发 Type-graphQL 订阅?
这是相同的PubSubEngine
实现。你检查过文档吗?
https://typegraphql.com/docs/subscriptions.html#using-a-custom-pubsub-system
【讨论】:
以上是关于Pub Sub 的不同实现是不是相互配合?的主要内容,如果未能解决你的问题,请参考以下文章
将来自不同项目的服务帐户分配给 Pub/Sub 上的推送订阅
Ably Pub/Sub 实时 ILoggerSink LogEvent 不工作