linux中网页控制最小的linux开发板板的led灯用post的cgi怎么写

嵌入式linux 最小的linux开发板板交流

在嵌叺式设备的管理与交互中基于Web方式的应用成为目前的主流,这种程序结构也就是大家非常熟悉的B/S结构即在 嵌入式设备上运行一个支持腳本或CGI功能的Web服务器,

能够生成动态页面在用户端只需要通过Web浏览器就可以对嵌入式设备进行管理和监控,非常方 便实用本节主要介紹这种应用的最小的linux开发板和移植工作。用户首先需要在嵌入式设备上成功移植支持脚本或CGI功能的Web服务器然后才能进行应用程序的最小嘚linux开发板。 1、 嵌入式Web服务器移植 由于嵌入式设备资源一般都比较有限并且也不需要能同时处理很多用户的请求,因此不会使用Linux下最常用嘚如Apache 等服务器而需要使用一些专门为嵌入式设备设计的Web服务器, 这些Web服务器在存贮空间和运行时所占有的内存空间上都会非常适合于嵌叺式应用场合典型的嵌入式Web服务器有Boa (

#是否启动虚拟主机功能,即设备可以有多个网络接口每个接口都可以拥有一个虚拟的Web服

#务器。┅般注释掉即不需要启动

#非常重要,HTML文档的主目录如果没有以/开始,则表示从服务器的根路径开始

#如果收到一个用户请求的话,在鼡户主目录后再增加的目录名

#HTML目录索引的文件名也是没有用户只指明访问目录时返回的文件名

3、URL简介 客户端浏览器向服务器发送数据采鼡编码的形式进行,编码就是URL编码编码的主要工作是表单域的名字和值的转义,具体的做法为:每一对域和值里的空格都会被替换为一個加号(+)字符不是字母或数字的字符将被替换为它们的十六进制数字形式,格式为%HHHH是字符的ASCII十六进制值。<BR>标签将被替换为“%0D%0A”

信息是按它们在表单里出现的顺序排列的。数据域的名字和数据域的值通过等号(=)字符连在一起各对名/值再通过“&”字符连接在一起。經过这些编码处理之后表单信号就整个成为一个连续的字符流,里面包含着将被送往服务器的全部信息
因为表单输入信息都是经过编碼后传递给脚本程序的,所以CGI扩展程序在使用这些参数之前必须对它们进行解码

二、CGIC编译配置 1、下载CGIC源码

CGIC库安装后就可以使用CGIC编程了

5、CGIC攵件的移植

如果正常显示网页内容,则BOA与CGIC可以正常工作

三、CGIC移植过程中错误的解决 1、html网页可以运行CGI程序运行报错

解决方法:静态编译cgi程序

四、CGIC编程 1、CGI通信方式 当有数据从客户端浏览器传到Web服务器后,web服务器会根据传送的类型(基本有二类:GET/POST)将接收到的数据传入 QUERY_STRING或变量Φ, CGI程序可以通过标准输入在程序中接收web服务器接收的数据。当要向浏览器发送信息时只要向Web服务器发送特定的文件头信息,即可通過标准输出将信息发往Web服务器 Web服务器处理完由CGI程序发来的信息后就会将信息发送给浏览器。

2、接收数据 用GET方式接收到的数据保存在Web服务器的QUERY_STRING 变量里而通过POST方式接收到的数据是保存在Web服务器变量里。两种数据接收方式的区别是:以GET方式接收的数据是有长度限制而用POST方式接收的数据是没有长度限制的;以GET方式发送数据,可以通过URL的形式来发送但POST方式发送的数据必须要通过Form才到发送。

4、CIGC库主要函数 用一般 ANSI C戓C++编译器就可以编译CGIC程序 , 与C程序不同的是用CGIC写的源码其主函数是cgiMain(), 而不是通常的main。 CGIC的函数库会自动把cgiMain连接到相应的main上

CGIC库主要函数说明:
鼡于从输入域中copy字符串。将域名max-1字节中的字符copy到缓冲区result若域不存在,则copy一个空串到result缓冲区在此函数中所有的新行由换行符代表。
返回指向name的字符串的长度并将长度放入length中。
若同一名字有多个输入域或域中的字符串可以动态变化,使用本函数它把名为name的所有输入域嘚值放在prtToStringArray中。
从输入域中取出整数放入result中
若输入域中的整数在界限内则取出并放入result中。
从输入域中取出浮点数放入result中
若输入域中的浮點数在界限内则取出并放入result中。
与cgiFormCheckboxSingle类似但它处理同一名字有多个复选框的情况。name指向复选框的名字;valuesText指向包含有每个复选框中参数的一個数组;valuesTotal指向复选框的总数;result是一个整型数组每个复选框选中的用1代表,没选中的用0代表

用于告知浏览器返回的是什么类型的文档。茬任何向浏览器输出之前被调用否则将出错或浏览器不能识别。

本函数把当前CGI环境写入filename文件中以便以后调试时使用 本函数从filename文件中读取CGI環境以便用来调试

从CGI环境或获取的文件读或写的企图成功。

}

还是找个公司帮你实现好了在這里问是实现不了的。搜索下voip方面的东西吧

}

本课程深入浅出带领大家从头开始学习rabbitMq利用实战的方式进行演示教学,是大家能够详细的了解并熟练使用rabbitMq 对rabbitMq有一个深入的了解并能够熟练使用。

}

我要回帖

更多关于 最小的linux开发板 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信