4

我想试试 nxweb。所以我成功安装了它。不幸的是,该文档不存在。在深入研究代码和安装说明后,我认为我必须将C文件放在模块子目录中并通过以下方式重新编译主可执行文件:

gcc -O2 -g main.c modules/*.c -o mynxweb `pkg-config --cflags --libs nxweb`

由于这没有成功,我在main.c其中找到了一些似乎处理模块注册的代码。所以我补充说:

NXWEB_HANDLER_SETUP(my_click, "/click", click, .priority=1000);

并重新编译。它编译得很好。但是我在目录中找不到click.o(我的源文件称为click.csrc/bin。信息消息也没有提到我的模块。所以我不知道我错过了什么。

也许我们可以在 Stackoverflow 上开始一个小的 nxweb noob 文档。

4

2 回答 2

3

基本上程序如下:

  1. 从源代码构建和安装 nxweb 。按照安装文件中的说明进行操作。这将安装 nxweb 库。

  2. 编写你的模块。举个bin/modules/hello.c例子。确保你有NXWEB_DEFINE_HANDLER(my_unique_handler_name, ...)它。

  3. 使用提供的和您的模块构建 nxweb 可执行文件main.c,将其链接到 nxweb 库:

    gcc -O2 -g main.c my_module.c -o mynxweb `pkg-config --cflags --libs nxweb`

  4. 通过指定应该调用您的处理程序的 URL 前缀来配置routingnxweb_config.json 中的表:

    { "prefix":"/my_handler_url", "handler":"my_unique_handler_name" },

  5. 启动/重启 nxweb。

于 2013-10-09T19:00:57.413 回答
1

我找到了!

您还必须将模块名称和路由路径添加到nxweb_config.json.

例如:

{ // see modules/click.c
  "prefix":"/click", "handler":"click"
},
于 2013-10-09T15:25:19.037 回答