如何在清漆中获取请求体

时间:2011-11-11 08:20:20

标签: varnish varnish-vcl

我目前正在开发一个基于清漆的项目..

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

2 个答案:

答案 0 :(得分:4)

您可以使用VCL / VMOD执行几乎所有操作。 您应该尝试在vcl_recv中调用VMOD子例程,然后在C代码中编写如下内容:

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

享受!

您应该查看现有的vmod https://www.varnish-cache.org/vmods,并可以自由查看清漆API来源。

答案 1 :(得分:1)

我不确定你能不能。

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

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