【问题标题】:Sending a response without calling render() from a Mojolicious::Lite application发送响应而不从 Mojolicious::Lite 应用程序调用 render()
【发布时间】:2012-10-18 17:56:58
【问题描述】:

我正在Mojolicious::Lite 中编写“部分代理”。某些请求(取决于查询路径和参数值)向另一台服务器生成请求,而其他请求则在本地处理。

有一个nice proxy example,但它完全覆盖了请求/响应处理,因此不适合我的需要。

目前,我正在通过

编组响应
$self->render(data => $res->body, code => $res->code);

很遗憾,这并没有考虑到不同的内容类型。使用Mojolicious::Type 没有帮助, 因为我需要内容类型的反向映射 在$resformatrender();除了, 可能的渲染格式的数量要少得多 超过可能的内容类型的数量。

所以理想情况下,而不是上面的 $self->render() 调用 我需要一种方式来表达“这里,我收到了$res 的回复; 请按原样退还给客户”。

有什么想法吗?谢谢!

【问题讨论】:

    标签: perl mojolicious


    【解决方案1】:

    好的,诀窍是将render() 调用替换为

    $self->tx->res($res);
    $self->rendered($res->code);
    

    【讨论】:

      猜你喜欢
      • 2015-10-06
      • 1970-01-01
      • 1970-01-01
      • 2012-10-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多