0

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

4

1 に答える 1

0

これは、Parse Arduino Yun ライブラリ バージョン 1.0.0 でのメモリ リークが原因でした。バージョン 1.0.1 で修正されました。

于 2015-08-07T20:51:51.560 に答える