ESP-IDF-Webserver: Wie man mit JSON-Erfolgs- oder Fehlermeldung antwortet
Diese Hilfsfunktionen ermöglichen es Ihnen, einfach mit einem {"status": "ok"} oder {"status": "error", "error": "..."} zu antworten.
Beachten Sie, dass die Fehlermeldung nicht escapet, sondern wie gesendet wird, sodass einige Fehlermeldungen mit Anführungszeichen (") oder anderen Sonderzeichen das JSON brechen könnten.
http_response_helpers.cpp
esp_err_t SendStatusOK(httpd_req_t *request) {
httpd_resp_set_type(request, "application/json");
httpd_resp_sendstr(request, "{\"status\":\"ok\"}");
return ESP_OK;
}
esp_err_t SendStatusError(httpd_req_t *request, const char* description) {
httpd_resp_set_type(request, "application/json");
httpd_resp_send_chunk(request, "{\"status\":\"error\", \"error\": \"", HTTPD_RESP_USE_STRLEN);
// NOTE: We silently assume that description does not have any special characters
httpd_resp_send_chunk(request, description, HTTPD_RESP_USE_STRLEN);
httpd_resp_send_chunk(request, "\"}", HTTPD_RESP_USE_STRLEN);
httpd_resp_send_chunk(request, nullptr, 0); // Finished
return ESP_OK;
}Check out similar posts by category:
C/C++, ESP8266/ESP32
If this post helped you, please consider buying me a coffee or donating via PayPal to support research & publishing of new posts on TechOverflow