关于GraphQL-Yoga中pubSub模块Subscription resolver的resolve函数及payload的疑问
GraphQL-Yoga订阅解析器中
resolve: (payload) => payload的作用与payload说明 一、resolve: (payload) => payload的作用
- 这是订阅字段的结果处理函数,负责将PubSub传递过来的原始数据转换为最终返回给客户端的订阅结果。
- 这里直接返回
payload,说明当前业务不需要对原始数据做任何加工(比如字段过滤、格式转换、计算衍生值),直接把发布的原始内容透传给订阅客户端即可。如果后续需要调整返回给客户端的数据结构,只需要在这个函数里对payload做相应处理后再返回。
二、payload是什么
payload是PubSub系统触发订阅事件时,传递给订阅解析器的原始消息数据对象。- 以
randomNumber场景为例,它就是发布者调用pubSub.publish('RANDOM_NUMBER', { randomNumber: Math.random() })时传入的第二个参数——也就是包含randomNumber字段的对象,里面存储着生成的随机数。 - 本质上,
payload是发布方向订阅方推送的核心消息载体,承载了订阅事件需要传递的所有数据。
内容的提问来源于stack exchange,提问作者kob003
相关产品推荐
相关产品推荐

