无法将 NodeMCU 与 Firebase 连接,因为控制台显示设置/编号失败:每次

1 arduino firebase nodemcu esp8266

无法将 NodeMCU 与 Firebase 连接,因为控制台显示设置 /number 失败:每次 Firebase 上也没有更新。

还是我应该更换云服务器?

    #include <ESP8266WiFi.h>
    #include <FirebaseArduino.h>

    // Set these to run example.
    #define FIREBASE_HOST "example.firebaseio.com"
    #define FIREBASE_AUTH "token_or_secret"
    #define WIFI_SSID "SSID"
    #define WIFI_PASSWORD "PASSWORD"

    void setup() {
      Serial.begin(9600);

      // connect to wifi.
      WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
      Serial.print("connecting");
      while (WiFi.status() != WL_CONNECTED) {
        Serial.print(".");
        delay(500);
      }
      Serial.println();
      Serial.print("connected: ");
      Serial.println(WiFi.localIP());

      Firebase.begin(FIREBASE_HOST, FIREBASE_AUTH);
    }

    int n = 0;

    void loop() {
      // set value
      Firebase.setFloat("number", 42.0);
      // handle error
      if (Firebase.failed()) {
          Serial.print("setting /number failed:");
          Serial.println(Firebase.error());  
          return;
     }
      delay(1000);
    }
Run Code Online (Sandbox Code Playgroud)

Ben*_*n T 6

Firebase Arduino 库引用了 Firebase SSL 证书的指纹。此指纹可能与当前指纹不匹配。

此指纹在FirebaseHttpClient.h(通常在C:\Users\<User>\Documents\Arduino\libraries\firebase-arduino-<version>\src\FirebaseHttpClient.h)中。

要查找和更改当前指纹:

  1. https://www.grc.com/fingerprints.htm
  2. 输入“test.firebaseio.com”
  3. 记录指纹(例如它当前是 03:9E:4F:E6:83:FC:40:EF:FC:B2:C5:EF:36:0E:7C:3C:42:20:1B:8F
  4. 打开C:\Users\<User>\Documents\Arduino\libraries\firebase-arduino-<version>\src\FirebaseHttpClient.h
  5. kFirebaseFingerprint指纹替换值(不带冒号)
  6. 重新编译

例如,此时以下指纹有效:

static const char kFirebaseFingerprint[] =
  "03 9E 4F E6 83 FC 40 EF FC B2 C5 EF 36 0E 7C 3C 42 20 1B 8F";
Run Code Online (Sandbox Code Playgroud)

https://github.com/FirebaseExtended/firebase-arduino/issues/328