docs: update JSON field type checks from JsonObject to String for improved validation

This commit is contained in:
Manuel Weiser 2025-02-21 17:11:48 +01:00
parent 4992f5f433
commit 38b68aecfc
3 changed files with 11 additions and 11 deletions

View File

@ -186,7 +186,7 @@ bool updateSpoolTagId(String uidString, const char* payload) {
}
// Überprüfe, ob die erforderlichen Felder vorhanden sind
if (!doc["sm_id"].is<JsonObject>() || doc["sm_id"].as<String>() == "") {
if (!doc["sm_id"].is<String>() || doc["sm_id"].as<String>() == "") {
Serial.println("Keine Spoolman-ID gefunden.");
return false;
}
@ -368,7 +368,7 @@ bool checkSpoolmanExtraFields() {
for (uint8_t s = 0; s < extraLength; s++) {
bool found = false;
for (JsonObject field : doc.as<JsonArray>()) {
if (field["key"].is<JsonObject>() && field["key"] == extraFields[s]) {
if (field["key"].is<String>() && field["key"] == extraFields[s]) {
Serial.println("Feld gefunden: " + extraFields[s]);
found = true;
break;
@ -430,7 +430,7 @@ bool checkSpoolmanInstance(const String& url) {
String payload = http.getString();
JsonDocument doc;
DeserializationError error = deserializeJson(doc, payload);
if (!error && doc["status"].is<JsonObject>()) {
if (!error && doc["status"].is<String>()) {
const char* status = doc["status"];
http.end();
@ -469,7 +469,7 @@ bool saveSpoolmanUrl(const String& url) {
String loadSpoolmanUrl() {
JsonDocument doc;
if (loadJsonValue("/spoolman_url.json", doc) && doc["url"].is<JsonObject>()) {
if (loadJsonValue("/spoolman_url.json", doc) && doc["url"].is<String>()) {
return doc["url"].as<String>();
}
Serial.println("Keine gültige Spoolman-URL gefunden.");

View File

@ -58,7 +58,7 @@ bool saveBambuCredentials(const String& ip, const String& serialnr, const String
bool loadBambuCredentials() {
JsonDocument doc;
if (loadJsonValue("/bambu_credentials.json", doc) && doc["bambu_ip"].is<JsonObject>()) {
if (loadJsonValue("/bambu_credentials.json", doc) && doc["bambu_ip"].is<String>()) {
// Temporäre Strings für die Werte
String ip = doc["bambu_ip"].as<String>();
String code = doc["bambu_accesscode"].as<String>();
@ -270,9 +270,9 @@ void mqtt_callback(char* topic, byte* payload, unsigned int length) {
}
// Prüfen, ob "print->upgrade_state" und "print.ams.ams" existieren
if (doc["print"]["upgrade_state"].is<JsonObject>()) {
if (doc["print"]["upgrade_state"].is<String>()) {
// Prüfen ob AMS-Daten vorhanden sind
if (!doc["print"]["ams"].is<JsonObject>() || !doc["print"]["ams"]["ams"].is<JsonObject>()) {
if (!doc["print"]["ams"].is<String>() || !doc["print"]["ams"]["ams"].is<String>()) {
return;
}
@ -315,7 +315,7 @@ void mqtt_callback(char* topic, byte* payload, unsigned int length) {
}
// Prüfe die externe Spule
if (!hasChanges && doc["print"]["vt_tray"].is<JsonObject>()) {
if (!hasChanges && doc["print"]["vt_tray"].is<String>()) {
JsonObject vtTray = doc["print"]["vt_tray"];
bool foundExternal = false;
@ -363,7 +363,7 @@ void mqtt_callback(char* topic, byte* payload, unsigned int length) {
ams_count = amsArray.size();
// Wenn externe Spule vorhanden, füge sie hinzu
if (doc["print"]["vt_tray"].is<JsonObject>()) {
if (doc["print"]["vt_tray"].is<String>()) {
JsonObject vtTray = doc["print"]["vt_tray"];
int extIdx = ams_count; // Index für externe Spule
ams_data[extIdx].ams_id = 255; // Spezielle ID für externe Spule

View File

@ -49,7 +49,7 @@ void onWsEvent(AsyncWebSocket *server, AsyncWebSocketClient *client, AwsEventTyp
}
else if (doc["type"] == "writeNfcTag") {
if (doc["payload"].is<JsonObject>()) {
if (doc["payload"].is<String>()) {
// Versuche NFC-Daten zu schreiben
String payloadString;
serializeJson(doc["payload"], payloadString);
@ -235,7 +235,7 @@ void setupWebserver(AsyncWebServer &server) {
html.replace("{{spoolmanUrl}}", spoolmanUrl);
JsonDocument doc;
if (loadJsonValue("/bambu_credentials.json", doc) && doc["bambu_ip"].is<JsonObject>()) {
if (loadJsonValue("/bambu_credentials.json", doc) && doc["bambu_ip"].is<String>()) {
String bambuIp = doc["bambu_ip"].as<String>();
String bambuSerial = doc["bambu_serialnr"].as<String>();
String bambuCode = doc["bambu_accesscode"].as<String>();