センサー値をPOSTする
データをバックエンドのエンドポイントに送信します。
「センサー値をPOSTする」はCoddyKit上の無料Arduino & IoT Academyレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはArduino & IoT Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Arduino & IoT Academyコースには全4レッスンが含まれています。
今度はデータを送信する
GETはデータを取得します。センサーの測定値をサーバーへ送信するには、代わりにPOSTリクエストを使います。📤
GETとPOSTの違い
GETはデータを要求します。一方POSTは、何か新しいものを作成または保存するために、データ本体をサーバーへ送信します。
GETと同じ準備
HTTPClientを作成し、エンドポイントURLを指定してbegin()を呼び出す点は同じです。POSTでは送信する手順だけが変わります。
HTTPClient http;
http.begin("http://api.example.com/readings");ペイロードを作成する
何を送信するか決めます。測定値を格納した小さなJSON文字列は、データをまとめる標準的で扱いやすい方法です。
String body = "{\"temp\":24.5}";データの種類をサーバーに伝える
Content-Typeヘッダーを設定し、本文がJSONであることをサーバーに伝えます。これがないと、サーバーがデータを正しく解釈できない場合があります。
http.addHeader("Content-Type", "application/json");POSTで送信する
POST()を呼び出して本文を渡します。GETと同じようにステータスコードが返るため、処理が成功したか確認できます。
int code = http.POST(body);保存されたことを確認する
200または201は、サーバーがデータを受け付けたことを意味します。特に201は、新しいレコードが作成されたことを示します。
if (code == 200 || code == 201) {
// stored
}返信があれば読む
サーバーはPOSTに対しても、IDや確認メッセージなどを返すことがあります。必要であればgetString()で読み取ります。
String reply = http.getString();接続を閉じる
いつものように、POSTの後でend()を呼び出して接続を解放します。これでボードを次の送信に備えた健全な状態に保てます。
http.end();スケジュールに従って送信する
通常、ループのたびにPOSTすることはありません。センサーを読み取り、数秒または数分に1回uploadして、電力と帯域幅を節約します。
サーバーの形式に合わせる
サーバーは特定のformatでフィールドが渡されることを想定しています。JSONのキーや型が間違っていると、測定値は拒否されます。
クイックチェック
バックエンドにJSON本文を送信しています。どのリクエストメソッドが適していますか?
まとめ
測定値をJSONにまとめ、Content-Typeヘッダーを設定し、POST()で送信して、コードを確認した後に接続を閉じました。データはクラウドに保存されています。🎉
AI チューターと学ぶ C++ — 無料
ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。
- コース
- 30
- レッスン
- 120
よくある質問
「センサー値をPOSTする」レッスンは無料ですか?
はい。「センサー値をPOSTする」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Arduino & IoT Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Arduino & IoT Academyコースには全4レッスンが含まれています。
「センサー値をPOSTする」で何を学びますか?
データをバックエンドのエンドポイントに送信します。 ブラウザで直接実行するハンズオンコードでArduino & IoT Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Arduino & IoT Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのArduino & IoT Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。
「センサー値をPOSTする」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このArduino & IoT Academyレッスンでコードを書いて実行できますか?
はい。すべてのArduino & IoT Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- APIからGETデータを取得する
- センサー値をPOSTする
- JSONレスポンスを解析する
- HTTPSを安全に使う