嗨,我使用了 esp8266 模块http客户端示例,我的代码与示例代码完全一样。
这是我的代码的一部分:
if (httpCode > 0) {
if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {
String payload = http.getString();
if(payload=="text") {
digitalWrite(LED_BUILTIN, HIGH);
} else {
digitalWrite(LED_BUILTIN, LOW);
}
}
}
我无法将变量与文本进行比较,LED_BUILTIN
始终处于打开状态。我确信它可以获取http客户端页面的文本,因为我可以使用softwareserial
将其发送到Arduino nano。
答案 0 :(得分:0)
如果LED点亮,则比较方法肯定有效。尝试从服务器发送其他字符串,您的LED应该关闭。而且,当遇到此类问题时,请尝试将“有效负载”打印到串行监视器上。至少,您可以找出问题所在。
希望获得帮助。