HTTPリクエスト・データベース書き込みのエラー
HTTPリクエストで値を受け取り、データベースに記録するコードについて、以下のようなエラーが発生していました。
curl -X POST https://us-central1-temperature-XXX.cloudfunctions.net/addTemperatureData
\
-H "Content-Type: application/json" \
-d '{"temperature": "27.5", "macAddress": "XXX"}'
{"error":"Value for argument \"data\" is not a valid Firestore document. Cannot use \"undefined\" as a Firestore value (found in field \"macAddress\"). If you want to ignore undefined values, enable `ignoreUndefinedProperties`."}zsh: command not found: -H
データベースに記述するときの変数が未定義のため起こっているようですが、コード中では定義されていました。
原因はコマンドの記述に誤り(バックスラッシュ関連)があったためでした。
以下のように修正したところ、無事動作しました。
・誤りのコマンド
curl -X POST https://us-central1-temperature-XXX.cloudfunctions.net/addTemperatureData \
-H "Content-Type: application/json" \ -d '{"temperature": "27.5", "macAddress": "XXX"}'
・正しいコマンド
curl -X POST https://us-central1-temperature-XXX.cloudfunctions.net/addTemperatureData \
-H "Content-Type: application/json" \
-d '{"temperature": "27.5", "macAddress": "XXX"}'