千家信息网

awtk-restful-httpd怎么配置

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章主要介绍"awtk-restful-httpd怎么配置",在日常操作中,相信很多人在awtk-restful-httpd怎么配置问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希
千家信息网最后更新 2026年11月03日awtk-restful-httpd怎么配置

这篇文章主要介绍"awtk-restful-httpd怎么配置",在日常操作中,相信很多人在awtk-restful-httpd怎么配置问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"awtk-restful-httpd怎么配置"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

1. 介绍

在嵌入式应用程序中,有时需要提供一个 WEB 服务,用于对系统进行远程配置和管理。

awtk-restful-httpd 实现了一个 RESTful HTTP 服务框架,可以帮助开发者快速实现 RESTful API 风格的 WEB 服务。主要特色有:

  • 小巧。约 3000 行代码。

  • 简单。注册自己路由表处理函数即可。

  • 易用。内置路由解析功能,并提供简单易用的 JSON 读写 API。

  • 内存开销低。正常 REST API 内存需求小于 2K,静态文件内存需求小于 6K。

  • 方便嵌入到 AWTK 应用程序。无缝集成到 AWTK 的主循环,无需另外开辟线程。

2 准备

2.1 获取 awtk 并编译

git clone https://github.com/zlgopen/awtk.gitcd awtk; scons; cd -

2.2 获取 awtk-restful-httpd 并编译

git clone https://github.com/zlgopen/awtk-restful-httpd.gitcd awtk-restful-httpd
  • 生成资源

python ./scripts/update_res.py all

或者通过 designer 生成资源

  • 编译 PC 版本

scons
  • 编译 LINUX FB 版本

scons LINUX_FB=true

完整编译选项请参考 编译选项

3. 运行

./bin/demo

4. 示例

4.1 定义路由表

static ret_t my_httpd_on_status(http_connection_t* c) {  return RET_OK;}static ret_t my_httpd_on_element_action(http_connection_t* c) {  return RET_OK;}static const http_route_entry_t s_my_httpd_routes[] = {  {HTTP_GET, "/status", my_httpd_on_status},  {HTTP_GET, "element/:element/:action", my_httpd_on_element_action}};

4.2 静态文件

内置提供了静态文件的处理,支持静态文件处理相当容易。

static ret_t my_httpd_on_get_file(http_connection_t* c) {  return http_route_handle_static_file(c, "static");}

"static"在这里表示静态文件所在的目录。

路由匹配规则用"*"表示缺省路由,放到最后一项,用来处理静态文件。

{HTTP_GET, "*", my_httpd_on_get_file},

4.3 静态文件传输优化

有些大的文件,特别是文本文件,可以压缩之后传输,能大大提供传输效率。为了避免运行时压缩带来的内存和 CPU 开销,可以预先压缩文件,并以.gz 文件命名。

比如请求 static/js/awtk_asm.wasm 文件时,如果存在 static/js/awtk_asm.wasm.gz,那么就返回 static/js/awtk_asm.wasm.gz 给客户端,并设置 Content-Encoding,浏览器会自动解压。

Content-Encoding: gzip

4.4 启动服务

ret_t my_httpd_start(httpd_t* httpd) {  return_value_if_fail(httpd != NULL, RET_BAD_PARAMS);  httpd_set_routes(httpd, s_my_httpd_routes, ARRAY_SIZE(s_my_httpd_routes));    return httpd_start(httpd);}

到此,关于"awtk-restful-httpd怎么配置"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

文件 静态 编译 配置 路由 内存 处理 学习 服务 传输 帮助 应用程序 开销 更多 版本 程序 资源 需求 易用 应用 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技公司简介 亿人帮互联网科技有限公司 湖南永感互联网科技有限公司 互联网科技行业发展 互联网科技金融公司 奇酷互联网科技公司 奇酷互联网络科技 亿策互联网科技 电子科技大学互联网 互联网科技英文翻译 成都玖崟互联网科技有限公司乐商圈怎么样 互联网汽车科技小镇 中国科技互联网公司收入 语蝶互联网科技有限公司 宜昌元轩互联网科技有限公司 呼和浩特新华互联网科技学院 中国新注册互联网科技 互联网科技企业商标注意事项 兰石爱特工业互联网科技分公司 互联网科技创新方面的资料 中国互联网科技工作委员会毛军 科技互联网龙头 互联网最新的科技有限公司 亿账通互联网科技 赫美联合互联网科技 伴你行互联网科技有限公司 四川狮子座互联网科技 中正互联网科技招聘 华中科技大学互联网的牛人 科技信息时代互联网发展
0