HTTP应用的基本流程如下:
1、激活PDP
2、初始化HTTP服务
3、设置HTTP会话参数
4、如果要支持SSL,配置SSL参数
5、如果使用POST命令,输入POST数据
6、发起HTTP请求
7、收到HTTP应答,读取应答数据
8、终止HTTP服务
注意: 第2步到第5步,只要输入格式正确,基本不会出问题;
第6步和第7步出现异常后:终止HTTP服务,有选择性的去激活PDP;然后再有选择性的激活PDP,从第2步开始重新执行。
先来看个正常情况下的AT命令序列:
AT+CPIN?
+CPIN: READY //查询sim卡是否正常
OK
AT+CGATT?
+CGATT: 1 //查询是否附着上数据网络,如果返回+CGATT: 0表示未附着上
OK
AT+SAPBR=3,1,"CONTYPE","GPRS"
OK
AT+SAPBR=3,1,"APN","" //设置APN,此处""表示使用从网络端自动获取到的APN
OK
AT+SAPBR=1,1 //发起激活PDP的请求
OK
AT+SAPBR=2,1 //注意:此命令仅仅查询PDP地址,可以不执行
+SAPBR: 1,1,"10.159.1.145" //请求到的PDP地址
OK
AT+HTTPINIT
OK
AT+HTTPPARA="CID",1
OK
AT+HTTPPARA="URL","www.baidu.com"
OK
AT+HTTPACTION=0
OK
+HTTPACTION: 0,200,153869
AT+HTTPREAD
+HTTPREAD: 153869
<!DOCTYPE html>
......
</html>
OK
在这个过程中,注意事项如下:
1. 发送AT+HTTPACTION命令后,收到OK仅仅表示4G模块开始处理这条命令,并不表示请求发送成功,收到了应答;只有收到+HTTPACTION: n,statusCode,len才表示请求结束,statusCode表示应答成功,其余都表示应答失败。
2.发送AT+HTTPACTION命令,和服务器建立了http连接后,如果连接异常被动断开,会输出+HTTPACTION: ,,提示