错误 +HTTPACTION:0,601,0

Posted

技术标签:

【中文标题】错误 +HTTPACTION:0,601,0【英文标题】:error +HTTPACTION:0,601,0 【发布时间】:2013-04-05 04:46:08 【问题描述】:

我正在尝试使用 sim900 GSM 模块访问网站。 这是命令列表

AT+CSQ      
+CSQ: 16,0          

OK  
AT+HTTPINIT           
OK  
AT+HTTPPARA="CID",1                   
OK  
AT+HTTPPARA="URL","www.google.com"                                  
OK  
AT+HTTPACTION=0               
OK  

+HTTPACTION:0,601,0                         

AT+HTTPACTION=0
OK

+HTTPACTION:0,601,0

无法访问谷歌。 601 代码显示网络错误。 如何摆脱这个错误?

【问题讨论】:

***.com/a/69513173/8119511 【参考方案1】:

您需要设置与承载的连接。以下是对我有用的最低设置命令(基于试验/错误并在 Internet 上搜索)。

AT+SAPBR=3,1,"APN","wap.cingular"
AT+SAPBR=1,1

您的 APN 正确值可能会有所不同,具体取决于您的网络和服务提供商。我正在使用 AT&T 预付费 SIM 卡。一旦它工作了,那么你就可以像你已经拥有的那样执行 HTTP 设置命令......

AT+HTTPINIT
AT+HTTPPARA="URL","http://www.google.com"
AT+HTTPACTION=0

在 HTTP 标准中未分配 600 以上(以及一些在 500 范围内)的状态代码。在SIM908的AT指令手册中,状态含义在HTTPACTION指令的注释中给出:

600 Not HTTP PDU
601 Network Error
602 No memory
603 DNS Error
604 Stack Busy

AT+SAPBR=2,1可以查询CID 1的承载连接状态,AT+SAPBR=4,1可以查询相关参数。您还可以使用AT+CGATT? 检查您是否已连接到 GPRS 网络。如果一切都表明您已连接并且您仍然收到 601 状态代码,请检查您的服务计划是否有数据并且它没有用完。我发现即使我的帐户余额显示有几百 k 的数据,我也会开始获得 601 状态,直到我将更多数据添加到我的预付费电话计划中。如果 SIM 模块一直处于开启状态并且您添加了更多数据,您需要关闭并重新打开您的连接(AT+SAPBR=0,1 后跟 AT+SAPBR=1,1)然后您的 HTTP* 命令将重新开始工作,而无需必须再次设置 HTTPPARA 设置,而无需使用 HTTPINIT 重新启动。

【讨论】:

【参考方案2】:

我发现当对仅 https 的网站进行 http 调用时,它会在 sim 卡上引发 601 错误。当心一些 sim 设备有 ssl 而有些没有。使用 AT+HTTPSSSL=?审问。带有 ssl 的设备将响应“HTTPSSSL 1”。如果您收到错误,您的设备没有 ssl。这需要我与工厂合作才能确定。

您还必须使用访问 ssl 站点。我使用的是 wifi101 ssl 客户端。

fona.setHTTPSRedirect(true); dy3

【讨论】:

【参考方案3】:

我也遇到过这个错误。问题的原因可能是电话号码帐户中没有足够的钱。你可以检查一下。

【讨论】:

【参考方案4】:

601 是一些自定义实现的错误代码。

Here是标准HTTP Status codes的列表

+HTTPACTION:0,601,0

上述用于 HTTP 会话开始的 AT 响应代码 (601) 表示 有网络错误。然后确保已设置 PDP 上下文 正确。

source

https://m2msupport.net/m2msupport/at-command-for-http-functions-for-remote-server-data-access/

【讨论】:

【参考方案5】:

我现在在这个模块上花了很多时间。

我的经验是,当您没有从远程服务器收到 200 回复时,您应该检查 IP 地址以验证您是否仍在网络上向工作服务器发送 ping (AT+CIPPING="XX.XX.XX.XX")。

如果成功:尝试AT+SAPBR=2,1AT+CIFSR。您应该为这两个命令获得相同的地址。

如果您没有获得相同的地址,请使用AT+CIPCSGP=1"yourapn.com""user""password" 再次登录网络/服务。

如果没有任何效果,请关闭模块。等待几分钟,然后重新启动。

【讨论】:

我认为这个答案需要进行一些编辑以使其更容易理解 - 例如,使用项目符号/编号可能会有所帮助。我有点不愿意介入并编辑自己,因为我可能会在不经意间改变一些重要的事情。【参考方案6】:

以防万一有人受到这个问题的影响并在 4 年后偶然发现这篇文章:在我的例子中,模块有一个小的“贴纸”型天线,它以某种方式损坏了。

我可以连接到网络,但是当我尝试通过 GPRS 网络使用 HTTP 时,我只收到返回代码 601(网络错误)或 603(无法解析 DNS)。

一旦我用新的天线更换了天线,一切正常。

【讨论】:

【参考方案7】:

再次,以防有人遇到同样的问题。就我而言,这是 url 中的错字: AT+HTTPPARA="URL"," http://www.google.com" 你注意到http前面的空格了吗?几个小时,我也没有注意到。

【讨论】:

【参考方案8】:

通常在此命令之后 AT+SAPBR=3,1,"CONTYPE","GPRS" 您输入您的“APN”、“USR”和“PWD”详细信息也使用 SAPBR=3,1 等。这些详细信息必须匹配SIM 卡/手机提供商。

然后建议检查您的设备现在是否已收到 IP 地址。有时这不是马上的。使用 AT+SAPBR=2,1 查询,这将返回您的 IP 地址,您应该检查确认。

一旦你有了 IP 地址,你就可以输入 AT+HTTPINIT, AT+HTTPPARA="CID",1 等等。

现在要使用 GET,您必须包含一个“?”在 URL 之后为您的 php 脚本提供 key=value 对。

因此,在您的情况下,它类似于 AT+HTTPPARA="URL","http://:8080/folder/savedata.php?A=1001" 其中 A 是键,1001 是价值。

现在发送 AT+HTTPACTION=0,您应该会收到 +HTTPACTION: 0,200,1000 响应,其中 200 是 OK,1000 是有效负载大小。如果需要,AT+HTTPREAD 将允许您读取响应。

【讨论】:

【参考方案9】:

更改网址。 601 是URL has been moved。是重定向。

【讨论】:

-1: 找不到任何证据表明 601 表示 URL 已被移动。而在 SIM900 手册中,601 绝对是“网络错误”的意思。

以上是关于错误 +HTTPACTION:0,601,0的主要内容,如果未能解决你的问题,请参考以下文章