使用GPRS模块向服务器HTTP请求

Posted sovagxa&静默

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用GPRS模块向服务器HTTP请求相关的知识,希望对你有一定的参考价值。

智能车锁的项目想着可以用HTTP请求服务器数据去更新车锁臂状态,这样服务器端可能会比socket连接稳定一些于是摸索了半天使用GPRS模块进行HTTP请求,摸索出来后才想起来这种请求-响应的形式不适合这个项目,因为要实时查询服务器的状态,会无端增加数据流量的消耗,但还是记录一下方便大家参考。

PS:不是所有的GPRS模块都可以使用HTTP请求,因为有些模块没有HTTP协议栈(如kingcomG3524),市场上比较流行的SIM900(SIM800)模块是可以做HTTP请求的,下面就贴出如何用AT指令向服务器请求数据。

 

/**************初始化指令**************/
AT 

OK 

/*IP应用设置*/
AT+SAPBR=1,1 

OK 

/*HTTP初始化*/
AT+HTTPINIT 

OK 

/*HTTP参数设置*/
AT+HTTPPARA="CID",1 

OK
/***************************************/

/**************HTTP请求指令*************/

/*HTTP参数设置(访问URL地址)*/
AT+HTTPPARA="URL","http://19144sq587.51mypc.cn:38269/GPRSPro/GprsServlet"

OK

/*HTTP访问方式 0:GET ; 1:POST*/
AT+HTTPACTION=0

OK 
+HTTPACTION:0,200,298 //请求方式,HTTP状态码,数据长度

/*读取数据 数据起始位置,数据结束位置*/
AT+HTTPREAD=0,214
+HTTPREAD:214 //读取的数据长度
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
  <HEAD><TITLE>A Servlet</TITLE></HEAD>
  <BODY>
    This is class com.gprs.servlet.GprsServlet, using the GET method
  </BODY>
</HTML>
OK
/***************************************/

 

最后可返回服务器respond的数据,可详细参考SIM900指令集HTTP部分,大概在192页开始。

上面有什么说的不准确的还请大佬指正。

 

以上是关于使用GPRS模块向服务器HTTP请求的主要内容,如果未能解决你的问题,请参考以下文章

Node.js 使用http客户端向网站请求数据并保存

Python 向 Postman 请求代码片段

共享单车是如何将二维码与自行车联系在一起的

如何使用Arduino和SIM900A GPRS / GSM模块将数据发送到Web服务器

Arduino GPRS模块的一些坑

是否可以在不使用 Web 浏览器的情况下通过 websockets 交谈?