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() を再度呼び出して更新する必要がありますか?