下面是GET请求
AT+HTTPPARA? 查询设置的Para命令
AT+SAPBR=1,1 (模块启动后设置一次即可)
OK AT+HTTPINIT (初始化)OK AT+HTTPPARA=CONTENT,application/x-www-form-urlencoded (Content-Type:application/json)OKAT+HTTPPARA=URL,http://47.95.250.97:9000/WebServiceGSMDemo.asmx/GetTokenOk
AT+HTTPACTION=0 (0是GET 1是POST)
OK+HTTPACTION: 0,200,97 (1Method,2 HTTPCode 3 Return Lenth)
AT+HTTPREAD +HTTPREAD: 97<?xml version="1.0" encoding="utf-8"?><string xmlns="http://tempuri.org/">Return Token</string>OKAT+HTTPTERM 结束命令。如果发送结束命令后必须要发送AT+HTTPINIT
上图出现的601错误是因为SIM模块不能访问到内网,所以部署到外网后,在进行测试就可以读取到数据
下面是POST请求
AT+HTTPINIT
OKAT+HTTPPARA=CONTENT,application/x-www-form-urlencoded OKAT+HTTPPARA=URL,http://47.95.250.97:9000/WebServiceGSMDemo.asmx/PostData OKAT+HTTPDATA=16,10000 (16=发送数据的长度,10000=10s 发送此命令后,出现DOWNLOAD,10s后就出现Ok的答复,意思就要在10s把Data参数数据发送完毕,或者达到长度值就会出现Ok命令的答复)DOWNLOADOK
args=a1&args2=a2 的Len是16(这里的Len指的是十六进制Byte,不是字符串长度值,一个汉字2个Byte)
也可以发送Json数据比如:
AT+HTTPDATA=25,10000
{"age":123,"Name":"ligl"} 的Len是25(这里的Len指的是十六进制Byte,不是字符串长度值,一个汉字2个Byte)
AT+HTTPACTION=1
OK+HTTPACTION: 1,200,122
AT+HTTPREAD +HTTPREAD: 122<?xml version="1.0" encoding="utf-8"?><string xmlns="http://tempuri.org/">Recv Data argsValue=a1 args2Value=a2</string>OK下面是WebServiceGSMDemo.asmx代码
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
![](https://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif)
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.Services;namespace WebServiceDemo{ ////// WebServiceGSMDemo 的摘要说明 /// [WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [System.ComponentModel.ToolboxItem(false)] // 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消注释以下行。 // [System.Web.Script.Services.ScriptService] public class WebServiceGSMDemo : System.Web.Services.WebService { [WebMethod] public string GetToken() { return "Return Token"; } [WebMethod] public string PostData(string args, string args2) { return "Recv Data argsValue=" + args + " args2Value=" + args2; } }}
WebService使用HTTP(Get/Post)访问时还需要在WebConfig中做配置
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
![](https://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif)
有人WIFI----------------------------AT命令配置
AT+TMODE=Httpdclient
AT+WMODE=STAAT+WSSSID=HUAWEI-FMRT3S (无线模块ID)AT+WSKEY=WPA2PSK,AES,12345678 (无线模块加密方式和密码)AT+HTTPTP=POST (Method)
AT+HTPMODE=new---HTTP
AT+HTTPURL=192.168.3.4,9001 (IP/域名,端口)AT+HTTPPH=/api/GSMTest/PostDataAT+HTPHEAD=Content-Type:application/json<<CRLF>>Host:192.168.3.4 (<<CRLF>>回车键符号)---WebservicesAT+HTTPURL=192.168.3.4,9000AT+HTTPPH=/WebServiceGSMDemo.asmx/PostDataAT+HTPHEAD=Content-Type:application/x-www-form-urlencoded<<CRLF>>Host:192.168.3.4 AT+Z(重启){"age":123,"Name":"ligl"} 使用串口工具发送
1.使用GSM模块,支持先GetToken后PostResult,但是只支持访问外网服务
2.使用有人WIFI模块,只能配置一个URL地址(只能配置PostResult),可以访问内网,也可以访问外网。
有人WIFI模块可以使用网页进行配置。