使用lua脚本的HTTP请求

我正在尝试使用SIM5218 modem通过3G发送HTTP GET操作。 在使用minicom时,我已经成功发送了该请求。 下面是我使用的命令:

at+netopen=,,1
at+chttpact="mywebsite.com",80
GET /myscript.py?var=varTest HTTP/1.0
<ctrl-m><ctrl-j><ctrl-m><ctrl-j> <ctrl-Z>

现在我想用lua脚本让SIM5218执行同样的请求。

printdir(1)
str='GET /myscript.py?var=Testlua HTTP/1.0\r\n\r\n'
sio.send('at+chttpact="mywebsite.fr",80')
rtc=sio.recv(5000)
sio.send(str);
sio.send(string.char(0x1A))
sio.send(string.char(0x00))
rtc=sio.recv(5000)
print(rtc);

这个不起作用,我知道我必须以不同的方式发送我的GET请求,但我不知道该怎么做。

先行致谢。

点赞
用户4078356
用户4078356

也许这会有帮助:

1)设置 APN:AT+CGSOCKCONT=1,"IP","internet.someprovider.zz"

该命令应返回 OK

2)为您的 APN 设置身份验证信息:AT+CSOCKAUTH=1,2,"user","password"

在我的情况下,我使用 CHAP(2)

3)打开网络:AT+NETOPEN=,,1

4)之后,您可以通过运行命令来检查 PDP 是否已激活:AT+IPADDR

5)打开连接:AT+CHTTPACT="mywebsite.com",80

该命令应返回 +CHTTPACT:REQUEST

6)我总是使用 HTTP/1.1。因此,请求应如下所示: request='GET /someRelativeUri HTTP/1.1\r\nHost: www.mywebsite.com\\r\\n\\r\\n'

7)按 Ctrl+Z (0x1A) 发送命令

sio.send(request .. string.char(0x1A))

8)读取响应,超时时间为30秒:response=sio.recv(30000)

如果一切正常,则响应应包含子字符串"+CHTTPACT: 0"

2014-10-04 19:22:20