Avatar von bsg3
  • bsg3

2 Beiträge seit 11.10.2013

Lovebox

Hallo,

vielen Dank für den tollen Artikel.

Beim Nachbau bin ich auf eine Herausforderung gestoßen, die ich bis jetzt nicht lösen konnte: Es werden mir keine Daten aus meinem GIST zurück gegeben.

Allgemeine Infos:
Original GitHub Repo
https://github.com/julisa99/Lovebox

URL zu meinem GIST

const String _url = "username/gist_id"; //anonymisierte URL meines GIST ohne filename, z.B. #file-message-txt

URL des Hosts

const char* host = "gist.githubusercontent.com";

--> Hier frage ich mich, warum nicht "gist.github.com", so wie es im GIST angegeben ist. Leider wird die Frage durch die Autorin auch nicht beantwortet. Wenn ich "gist.github.com" verwende, dann kommt gar keine Verbindung zu stande:

if (!client.connect(host, httpsPort)) { return; // Verbindung fehlgeschlagen }

Details
Ich lasse mir den Inhalt der folgenden Anweisung über die serielle Schnittstelle ausgeben:

client.print(String("GET ") + url + " HTTP/1.1\r\n" + "Host: " + host + "\r\n" + "User-Agent: ESP8266\r\n" + "Connection: close\r\n\r\n");

Output:

GET username/gist_id HTTP/1.1
Host: gist.githubusercontent.com
User-Agent: ESP8266
Connection: close

Dann lasse ich mir den Inhalt von temp ausgeben:

while (client.connected()) { String temp = client.readStringUntil('\n'); Serial.println("temp: " + temp); if (temp == "\r") { break; } }

Output:

temp: HTTP/1.1 301 Moved Permanently
temp: Location: https://gist.github.com/
temp: Content-Length: 0
temp: Accept-Ranges: bytes
temp: Date: Sun, 26 Jan 2020 17:44:24 GMT
temp: Via: 1.1 varnish
temp: Connection: close
temp: X-Served-By: cache-hhn4032-HHN
temp: X-Cache: HIT
temp: X-Cache-Hits: 2
temp: X-Timer: S1580060664.442720,VS0,VE0
temp: Access-Control-Allow-Origin: *
temp: X-Fastly-Request-ID: c0ebbe9a92c38b06799cab3c98e01c34bed77b38
temp: Expires: Sun, 26 Jan 2020 17:49:24 GMT
temp: Source-Age: 2038
temp: Vary: Authorization,Accept-Encoding
temp:

Folgender Output ist mir unklar:

HTTP/1.1 301 Moved Permanently
Location: https://gist.github.com/
Content-Length: 0

Es scheint einen redirect auf "gist.github.com" zu geben, aber der Inhalt ist leer.

Somit macht es leider auch Sinn, dass folgender Code keinen Inhalt ausgibt:

String id = client.readStringUntil('\n'); modus = client.readStringUntil('\n'); line = client.readStringUntil(0); Serial.println("id " + id + "\r\n" + "modus " + modus + "\r\n" + "line " + line);

Output:

id
modus
line

Für Hinweise zu einer Lösung wäre ich dankbar.

Bewerten
- +