"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;
    }