30

我正在考虑在 Web 服务器模块中集成多部分表单数据解析,以便我可以减轻后端 Web 应用程序(通常用动态语言编写)自身解析多部分数据的负担。多部分语法(RFC 2046)看起来很重要,如果我手动实现它,很多事情都会出错。是否已经有一个用 C 或 C++ 编写的好、轻量级的多部分/表单数据解析器?我正在寻找一个除了 C 或 C++ 标准库之外没有外部依赖项的工具。我不需要电子邮件附件处理或缓冲 I/O 类或可移植运行时或其他任何东西,只需要多部分/表单数据解析。

我考虑过的事情:

  • GMime - 依赖于 glib,所以不行。
  • libapreq - 太大,取决于 APR,文档不完整,没有单元测试。

我也看过用 Ragel 写一个解析器,但我不知道怎么做,因为语法不是静态的:边界可以任意改变。

4

5 回答 5

10

我知道这个问题现在已经有几年了,但我需要同样的问题并最终使用了这个:

https://github.com/iafonov/multipart-parser-c

于 2012-08-12T17:25:00.937 回答
6

是的,有一个。没有秘密,它是我自己的。随意使用它。链接是:MPFDParser。它根本没有依赖关系。

于 2011-10-30T21:01:07.380 回答
1

模仿声称支持它。我认为 GNU cgicc也可能支持它。

于 2010-04-08T13:09:30.413 回答
1

cgicc 支持它......但是写得非常糟糕并且在内存中的入口缓冲区上中继。

于 2010-04-12T06:47:45.997 回答
-5

这可能无法直接回答您的问题,但您是否考虑过来自 facebook 的 hiphop for php?

它将您的 php 代码转换为 c++,然后使用 g++ 编译。

可能会节省你自己写东西的时间。

于 2010-04-14T10:01:03.747 回答