ruby-on-rails - Ruby on Rails:在初始化程序中访问 ActionController::API 后没有 API 响应主体
问题描述
我正在尝试实现自定义日志记录 gem(主要基于lograge)。
在从初始化程序调用的方法中,我有一些逻辑要添加到传递给process_action.action_controller
事件的有效负载中,如下所示:
def self.add_custom_payload
base_classes = [ActionController::Base, ActionController::API]
base_classes.each do |base_class|
# logic that adds stuff to payload
end
end
添加后,当我向我的 API(我用来测试它的应用程序使用ActionController::API
)发出任何请求时,我总是得到一个空的响应。HTTP 状态代码和标头符合预期。
我认为这与我用来向有效负载添加内容的逻辑有关,但事实证明并非如此。即使我删除了其他所有内容,实际上只是拥有
def self.add_custom_payload
ActionController::API
end
在从初始化程序调用的方法中,同样的事情发生了,所有请求都返回一个空的响应体。
我难住了。这是什么原因造成的?
TL;DR:如果我ActionController::API
在初始化程序中访问,所有响应都有一个空主体。
解决方案
推荐阅读
- python-3.x - 我的 PyPI 安装包无法识别 chromedriver 文件
- django - 有没有办法让我设置虚拟环境而不会出现以下错误?
- python - 如何比较数字子列表中的第一项,如果重复,比较第二项并选择第二项最小的子列表?
- r - 未在 ggplot 中显示所有 x 轴标签
- python - pycharm优化导入的结果
- apache-spark - Databricks 上的 Apache Spark 原因:scala.reflect.internal.MissingRequirementError: object java.lang.Object in compiler mirror not found
- django - 为restframework viewset action decorator添加一个新的装饰器
- angular - Angular:Header 中的事件使用 eventemitter/Observable 更新子组件
- selenium - 詹金斯硒集成
- imagemagick - 使用 Imagemagick,在图像外部添加水印,例如。批量使用填充?