背景介绍:
成熟的http服务器框架非常多,例如SB,flask,.net.....这些框架基本上都是运行在操作系统之上,非常的高级。但是我们做嵌入式的望尘莫及!当然如果是linux的设备,可能还能用上轻量级的http服务器框架,但是如果是单片机呢,linux资源不多呢,那就只能自己手撸了。
可能我们还能在纠结一下,因为我们发现了一个lwip,居然自带http服务器,然后去看了之后,要跑起来可不容易啊,看到很多读文件的操作,那岂不是要把html存到文件系统,那对芯片的存储要求也不低了,还需要看看shtm等,既然这么麻烦,还得担心自己的芯片flash得不得劲。那干脆就自己撸吧。
需求功能:
在嵌入式系统,我们一般而言只需要获取设备的信息,读写参数,控制,升级等功能,那么接下来的教程主要实现以上的部分内容。
主要内容如下:
1-基于TCP实现服务器
2-传输html文件
3-实现路由
3-页面模板设计
4-文件上传传输
需要的技能:
1- httm协议需要基本了解,组成部分,url
2-tcp编程需要了解,任意平台都可以
3-需要了解js,css,ajax等
4-C语言
验证环境:
因为我们的逻辑使用c语言开发,除了tcp编程的api有所不同,其它的都是一样的,我们先使用win平台模拟实现,其实已经全部移植到嵌入式的lwip上实际运行了。这里的环境我会使用vs2012。
参考:
我以前写过一个类似的,http服务器,当时对js,css,html都还不太熟悉,并没有设计页面
c语言编写http服务器_c http_HES_C的博客-CSDN博客
效果展示: