"StaticJsonBuffer" 未在此范围内声明
"StaticJsonBuffer" was not declared in this scope
我在 NodeMCU ESP8266 模块上做了一个网络服务器来发送一些信息。
我可以发送 JSON 字符串,但是如果我尝试发送 StaticJsonBuffer
,我会收到一个未声明但包含在内的错误。 ArduinoJson 版本 6.5.0-beta.
这是我的部分代码:
void getData(){
StaticJsonBuffer<200> jsonBuffer;
JsonObject& root = jsonBuffer.createObject();
root["Temperature"] = Temperature;
root["Humidity"] = Humidity;
String json;
root.prettyPrintTo(json);
if(server.hasArg("plain") == false){
server.send(200, "application/json", json);
return;
}
所以我在ArduinoJson.org上搜索了一下,发现推荐使用ArduinoJson版本5.x。因为版本 6.x 处于测试阶段,所以有一些变化和错误......
您可以改用动态 JSON 缓冲区,您不必在其中初始化大小。 6.5.0 不是稳定版本。所以最好使用版本 5,这些是稳定版本并且具有所有功能。动态 JSON 缓冲区在 6.5.0 beta 版本中运行良好。
void getData(){
DynamicJsonBuffer jsonBuffer;
JsonObject& root = jsonBuffer.createObject();
root["Temperature"] = Temperature;
root["Humidity"] = Humidity;
String json;
root.prettyPrintTo(json);
if(server.hasArg("plain") == false){
server.send(200, "application/json", json);
return;
}
我在 NodeMCU ESP8266 模块上做了一个网络服务器来发送一些信息。
我可以发送 JSON 字符串,但是如果我尝试发送 StaticJsonBuffer
,我会收到一个未声明但包含在内的错误。 ArduinoJson 版本 6.5.0-beta.
这是我的部分代码:
void getData(){
StaticJsonBuffer<200> jsonBuffer;
JsonObject& root = jsonBuffer.createObject();
root["Temperature"] = Temperature;
root["Humidity"] = Humidity;
String json;
root.prettyPrintTo(json);
if(server.hasArg("plain") == false){
server.send(200, "application/json", json);
return;
}
所以我在ArduinoJson.org上搜索了一下,发现推荐使用ArduinoJson版本5.x。因为版本 6.x 处于测试阶段,所以有一些变化和错误......
您可以改用动态 JSON 缓冲区,您不必在其中初始化大小。 6.5.0 不是稳定版本。所以最好使用版本 5,这些是稳定版本并且具有所有功能。动态 JSON 缓冲区在 6.5.0 beta 版本中运行良好。
void getData(){
DynamicJsonBuffer jsonBuffer;
JsonObject& root = jsonBuffer.createObject();
root["Temperature"] = Temperature;
root["Humidity"] = Humidity;
String json;
root.prettyPrintTo(json);
if(server.hasArg("plain") == false){
server.send(200, "application/json", json);
return;
}