Embedded 使用telit GL 865 GSM/GPRS调制解调器通过GPRS上网

Embedded 使用telit GL 865 GSM/GPRS调制解调器通过GPRS上网,embedded,gsm,http-status-code-302,gprs,at-command,Embedded,Gsm,Http Status Code 302,Gprs,At Command,我正在研究Telit GL-865 GSM/GPRS调制解调器套件。我已经连接到我的电脑使用串行端口和终端访问使用腻子 我可以成功地执行所有AT命令来发送/接收短信、拨打语音电话等 我还可以使用AT+CGDCONT设置GPRS上下文,使用AT#SKTD打开与服务器的连接,并可以发送GET和POST请求。我还正确地获得了包含所有头的HTTP响应 然而,对于一些网站,我没有得到适当的回应。例如:www.google.com 如果我发送: AT#SKTD=0,80,"www.google.com" C

我正在研究Telit GL-865 GSM/GPRS调制解调器套件。我已经连接到我的电脑使用串行端口和终端访问使用腻子

我可以成功地执行所有AT命令来发送/接收短信、拨打语音电话等

我还可以使用AT+CGDCONT设置GPRS上下文,使用AT#SKTD打开与服务器的连接,并可以发送GET和POST请求。我还正确地获得了包含所有头的HTTP响应

然而,对于一些网站,我没有得到适当的回应。例如:www.google.com 如果我发送:

AT#SKTD=0,80,"www.google.com"
CONNECT
GET /<cr><lf>
<cr><lf>
AT#SKTD=0,80,“www.google.com”
连接
得到/
我得到以下回应:

HTTP/1.0 302 Found
Location: http://www.google.co.in/
Cache-Control: private
Content-Type: text/html; charset=UTF-8
Set-Cookie: PREF=ID=80125e212d950ff8:FF=0:TM=1310555250:LM=1310555250:S=lwD7-OUKPeiBwCri; expires=Fri, 12-Jul-2013 11:07:30 GMT; path=/; domain=.google.com
Date: Wed, 13 Jul 2011 11:07:30 GMT
Server: gws
Content-Length: 221
X-XSS-Protection: 1; mode=block

<HTML>
<HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
<TITLE>302 Moved</TITLE>
</HEAD>
<BODY>
<H1>302 Moved</H1>
The document has moved
<A HREF="http://www.google.co.in/">here</A>.
</BODY>
</HTML>
找到HTTP/1.0 302 地点:http://www.google.co.in/ 缓存控制:专用 内容类型:text/html;字符集=UTF-8 设置Cookie:PREF=ID=80125e212d950ff8:FF=0:TM=1310555250:LM=1310555250:S=lwD7 OUKPeiBwCri;expires=2013年7月12日星期五格林威治标准时间11:07:30;路径=/;域名=.google.com 日期:2011年7月13日星期三格林威治标准时间11:07:30 服务器:gws 内容长度:221 X-XSS-Protection:1;模式=块 302移动 302移动 文档已移动 .
此外,我无法访问www.wiley.com测试CGI脚本。作为对AT#STKD的响应,我获得了连接,但在我可以完成输入请求头之前,我收到了一条无载波消息。

我几乎解决了这个问题

HTTP 302的第一个问题只是HTTP重定向请求,因此我必须在while循环中编写代码,以便再次向响应中指定的“位置”发送新的GET请求


关于访问www.wiley.com的第二个问题是通过在我连接后立即粘贴请求头并按enter键来解决的,而不是手动键入。所以我想问题是由于输入延迟导致的超时。当我在程序中执行此操作时,它将是即时的,因此我不必担心它。

您是否正确地建立了PDP上下文

以下是我在使用Telit GM862时使用的命令和响应,它运行良好:

AT#USERID="username" //set username provided by mobile operator
AT#PASSW="password" //set password provided by mobile operator
AT+CGDCONT=1, "IP", "internet","0.0.0.0",0,0
AT#SKTSAV //save settings

AT#GPRS=1 //check if PDP context is established - if it is it should return the IP

+IP: 188.196.98.28

OK

AT#SKTD=0,80,"google.si",0,0

CONNECT

GET / HTTP/1.1<cr><lf> 
Host: www.google.si<cr><lf>
Connection: keep-alive<cr><lf>
<cr><lf>
HTTP/1.1 200 OK
Date: Fri, 27 May 2011 09:39:49 GMT
Expires: -1
Cache-Control: private, max-age=0
Content-Type: text/html; charset=ISO-8859-2
Set-Cookie: PREF=ID=2420df534f6e850f:FF=0:TM=1306489189:LM=1306489189:S=i3qJtsLHuyMMmV9q; expires=Sun, 26-May-2013 09:39:49 GMT; path=/; domain=.google.si
Set-Cookie: NID=47=VGbr367EMHD9yp5XA61kWaWL37G_zBAIhy1CbRlEr3br0rcdM-H93M3Imfhm1ccDZiKjV2GhK3gZrg_LIbuz2ycgAZsGOGU1a29VXt7UahnmEqxcXMsG2JJc8GfaNsoM; expires=Sat, 26-Nov-2011 09:39:49 GMT; path=/; domain=.google.si; HttpOnly
Server: gws
X-XSS-Protection: 1; mode=block
Transfer-Encoding: chunked

1000
<!doctype html><html><head><meta http-equiv="content-type" content="text/html; charset=ISO-8859-2"><title>Google</title><script>...</script>
0

NO CARRIER
AT#USERID=“username”//set移动运营商提供的用户名
在#PASSW=“password”//设置移动运营商提供的密码
AT+CGDCONT=1,“IP”,“互联网”,“0.0.0.0”,0,0
在#SKTSAV//保存设置
在#GPRS=1//检查PDP上下文是否已建立-如果已建立,则应返回IP
+IP:188.196.98.28
好啊
在#SKTD=0,80,“google.si”,0,0
连接
GET/HTTP/1.1
主持人:www.google.si
连接:保持活力
HTTP/1.1200ok
日期:2011年5月27日星期五09:39:49 GMT
过期:-1
缓存控制:专用,最大年龄=0
内容类型:text/html;字符集=ISO-8859-2
设置Cookie:PREF=ID=2420df534f6e850f:FF=0:TM=1306489189:LM=1306489189:S=i3qJtsLHuyMMmV9q;expires=太阳,2013年5月26日09:39:49 GMT;路径=/;domain=.google.si
设置Cookie:NID=47=VGbr367EMHD9yp5XA61kWaWL37G_zBAIhy1CbRlEr3br0rcdM-H93M3Imfhm1ccDZiKjV2GhK3gZrg_libuz2ycgazsgogu1a29vxt7uahnmeqxmsgsg2jc8gfansom;expires=2011年11月26日星期六09:39:49 GMT;路径=/;domain=.google.si;HttpOnly
服务器:gws
X-XSS-Protection:1;模式=块
传输编码:分块
1000
谷歌。。。
0
无载体

Hi@Niko Gamulin,我得到了正确的响应,但我在HTTP响应中遇到了一个问题,我在您的示例中也看到了这个问题。问题是HTTP响应中存在和/或的地方出现了随机数/字符/代码。如果您在示例中看到,您将看到在
帮助之前显示1000