【问题标题】:how to get request body in varnish如何在清漆中获取请求正文
【发布时间】:2011-12-26 20:10:11
【问题描述】:

我目前正在做一个基于 varnish 的项目..

我们写vclvmod。但是项目需要检查请求正文。 如何使用C function 获取VCLvmod 中的帖子请求正文?

【问题讨论】:

    标签: varnish varnish-vcl


    【解决方案1】:

    您几乎可以使用 VCL/VMOD 做任何您想做的事情。 您应该尝试在vcl_recv 中调用 VMOD 子程序,然后在 C 代码中编写如下内容:

    • 使用VRT_GetHdr(rec->s, HDR_REQ, "\017Content-Length:");读取正文长度
    • 使用HTC_Read(rec->s->htc, body, bodylen);

    享受吧!

    您应该查看现有的 vmods https://www.varnish-cache.org/vmods,并随意查看 varnish API 源代码。

    【讨论】:

      【解决方案2】:

      我不确定你可以。

      Varnish 通常只处理 Req/Resp 标头。 尸体在没有(太多)修改的情况下传递。

      我确实找到了解决方案,请告诉我,因为我也对此感兴趣。

      【讨论】:

        猜你喜欢
        • 2012-03-02
        • 2012-02-19
        • 2012-10-11
        • 2017-12-30
        • 2021-07-22
        • 2021-10-29
        • 2023-03-13
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多