在各种工程中我们经常和工业总线/以太网设备及部分RF/IR设备打交道,这方面想必大家已经轻车熟路。随着技术的发展现在大家也能见到一些混合通信设备,他们是配备了互联网领域常见的REST风格的控制接口的控制设备或终端设备,最早此类设备出现在家用领域,多以WIFI的方式接入和云端通信,现在这类设备也开始混杂的出现在常规控制领域了。当然现在的需求也常常让我们和云靠拢,不免我们就要接入很多的开放平台、云服务等。在这些方面HTTP接口大行其道,现行网络环境中HTTP其实是一种建立在TCP/IP协议上的上层协议(偶见UDP做的),实战派的OHSCE提供了对HTTP接口方便的调用。
初识你强大的工具伙伴函数:Ohsce_url_c (Ohsce_eng_url_c)
我们就通过OHSCE内置的这个函数,通过近乎一行的代码撸各种HTTP(S)API。
一、【GET】
GET方式是最流行的HTTP接口调用方式,调用很多开放平台的接口大多是以GET方式进行,当然一些设备也是。我们以随身云的天气API为示例,查询一条天气信息。
或
当然我们推荐您使用第二种方式,因为您取回来的数据很可能编码上有问题,您需要进行编码转换和JSON/XML解码。而将数据暂存在一个变量中更为合理一些。
更互联网化一点
现行的很多API是需要使用HEADER传送TOKEN的,例如百度APISTORE,ohsce_url_c函数的最后一个参数便是您用来设置HEADER的地方。当然还可以将HEADER作为数组数据加入URL部分使得代码更加的简短(如POST)。
二、【POST】
POST常见于表单的提交,但是咱网络控制器领域也常见一些厂家将其作为控制指令的提交方式,虽然它未必是最佳的解决方案(至少交给我不会这么做),但存在即为合理,有这样的产品我们就要适应。
只需要将OHSCE的URL变为数组并加入POST内容即可。
三、牛刀小试。
这是一个来自某宝的继电器设备例子。(群内空间有文件)
以HTTP方式向位于192.168.1.166IP地址的设备的80端口的relay.cgi文件POST提交进行开启指定回路、关闭指定回路和点控指定回路,并且进行了身份认证admin:12345678。
四、HTTPS
调用方式和HTTP一样,使得HTTPS URL为可用。
五、更多
这个函数还同时支持更多的协议,它为您操作各家设备提供了方便。例如三星厂的韩华品牌的监控摄像头提供FTP方式的操作,您便可以使用本函数操作它。
六、打磨您的工艺细化您的控制流程,并保持更新您的OHSCE框架至最新的稳定版本。
OHSCE愿每一名控制工程师都可以搭上互联网+的翅膀,每一名PHPWEB工程师都可以冲在物联网的前言,我们的程序是您可靠的基石。
官方网站:http://www.ohsce.org & http://www.ohsce.com
开发者QQ群:374756165
GITHUB:https://github.com/OpenIBC/Ohsce
GIT@OSC:https://git.oschina.net/SFXH/Ohsce
手册地址:http://www.ohsce.com/index.php/book/
捐助&支持OHSCE:http://www.ohsce.com/index.php/company/
合作&赞助:393562235(393562235@qq.com)