首页 > 解决方案 > 拦截 firebase-functions 响应(中间件)

问题描述

对于我的 Google Assistant/Dialogflow 项目,我试图拦截我的 firebase-functions 端点发送回 Dialogflow 的每个响应。我可以轻松拦截请求,但响应是在多个函数中构建的(每个 Intent 一个函数),我不想在每个函数中都包含一个拦截器。

是否有可能有一个中间件,或者在发送响应时是否提供回调,类似于每个响应的全局拦截器?

我在文档中找到了以下内容:https ://firebase.google.com/docs/functions/http-events#use_middleware_modules_with

但是,我不确定这是怎么回事。请注意,我没有使用自定义快速设置,而是直接在 firebase 上使用本机实现。

标签: firebasegoogle-cloud-functionsdialogflow-es

解决方案


serialize() 方法在返回响应之前在对话中调用,因此您可以做的是扩展对话对象(基于您正在使用的库)并覆盖 serialize 方法以执行您需要做的任何事情。不要忘记调用原始的序列化方法并在新方法中返回值。


推荐阅读