34
第三方手机客户端也可不使用 web 方式,直接调用云的开放接口,完成对网关的远程配置。若仅需要支持此方式,无需开发插件配置界面。
.1.开发 开发 插件配置界面
网页目录结构
/app/插件名称/webs/插件的网页目录
/app/插件名称/webs/index.html 插件的 PC 版页面起始文件
/app/插件名称/webs/index_m.html 插件的手机版页面起始文件
注意:页面内必须使用相对路径。
2.开发 开发 插件配置接口(CGI )
插件配置界面以 http post 方式提交数据给插件配置接口(下文简称为 CGI),
CGI 响应内容以 json 格式返回。
CGI 程序是独立的可执行文件,它的名称固定为 app.cgi。在 app.cgi 中能处理多
个 CGI 接口的请求。
Web 服务器从 httpget 请求中的 URL 中提取出本次操作的插件名称。插件名称包含在 URL 的/app/之后,例如:/app/system/webs/set_wireless.cgi 中,system是插件的名称。Web 服务器会自动执行 system 插件下的 app.cgi 程序,在 app.cgi中会得到本次调用的接口名称,即 set_wireless.cgi,并执行相应的函数来处理 CGI参数,例如 username=John 和 set_wireless=0。CGI 程序再与完成实际操作的插件
进行通讯,完成设置动作,最后 CGI 向前端返回结果。CGI 与插件间的通讯方式,系统中没有作规定,可以使用 linux 提供的各种进程间通讯机制。
1 2.1 0 360 S OS 对 对 I CGI 开发的支持
开发 CGI 程序,需要用到 cgi.so 和 cgi.h。
它们包含了一些常用的函数。CGI 程序的 main 函数定义在 cgi.so 中,所以在