feathers.js 中的 context.dispatch 是什么

What is context.dispatch in feathers.js

我阅读了 feathersjs API 文档。 (this)
但是我不明白什么是context.dispatch。这是做什么的。

context.dispatch is a writeable, optional property and contains a "safe" version of the data that should be sent to any client. If context.dispatch has not been set context.result will be sent to the client instead.

"safe" 版本是什么意思?
我什么时候想用它?

"safe" 版本是客户端可以看到的版本,对于在实时事件中隐藏字段(如密码)特别重要。例如,如果 - 在服务器上 - 你这样做:

app.service('users').patch(user.id, { enabled: false })

return 值将包括散列的 password,即使它使用 protect hook 因为它是内部调用。

但是,context.dispatch不会包含密码,patched real-time event只会将安全数据发送回客户端。