我开始使用Arduino Yun Parse SDK并按照基本示例保存对象。
我每分钟从传感器读取温度并将其保存到Parse:
void loop() {
delay(60000);
float temperature = dht.readTemperature();
if (isnan(temperature)) return;
ParseObjectCreate create;
create.setClassName("SensorReading");
create.add("temperature", temperature);
ParseResponse response = create.send();
Serial.print(response.getJSONBody());
if (!response.getErrorCode()) {
String objectId = response.getString("objectId");
Serial.print("Object id:");
Serial.println(objectId);
} else {
Serial.println("Failed to save the object");
}
response.close();
}
这最初会起作用,但如果我让它长时间运行(30多分钟),我就会开始收到此错误:
{"code":107,"error":"invalid JSON"}
在重新启动草图之前,它将为所有后续保存提供此错误代码。
我对Parse API生成的JSON在一段时间后如何变得无效感到困惑。即使在那些失败的保存请求中,温度值也是有效的浮点数。
也许这与我的Parse令牌到期有关?我应该通过再次调用Parse.begin()来刷新它吗?
答案 0 :(得分:0)
这是由于Parse Arduino Yun库版本1.0.0中的内存泄漏造成的。它已在1.0.1版中修复。