Hallo Zusammen,
ich habe mir eine Klasse geschrieben um mit meiner Philips Hue Bridge zu
kommunizieren.
Alle Methoden funktionieren wunderbar, bis auf das anlegen eines neuen
Nutzers. Ich fürchte, ich habe den Request falsch zusammengebaut, finde
aber den Fehler nicht.
Könnt ihr bitte mal schauen, ob ihr den Fehler seht?
Die Methode:
1 |
|
2 | String HueControl::registerUser(String userName) {
|
3 | String endpoint = "/api/newdeveloper";
|
4 | String body = "{\"devicetype\":\"";
|
5 | body += userName;
|
6 | body += "\"}";
|
7 |
|
8 | String requestString = "POST ";
|
9 | requestString += endpoint;
|
10 | requestString += " HTTP/1.1\r\nHost: ";
|
11 | requestString += _host;
|
12 | requestString += "\r\nConnection: close\r\n";
|
13 | requestString += "Content-Length: ";
|
14 | requestString += body.length();
|
15 | requestString += "\r\nContent-Type: ";
|
16 | requestString += "application/x-www-form-urlencoded";
|
17 | requestString += "\r\n\r\n";
|
18 | requestString += body;
|
19 |
|
20 | requestString += "\r\n\r\n";
|
21 | _client->print(requestString);
|
22 |
|
23 | String line = "keine Antwort";
|
24 | while( _client->available() == 0 ); //wait until client sends
|
25 | //while(!skipResponseHeaders()); //skip HTTP Header
|
26 | if (_client->available()){
|
27 | line = _client->readString();
|
28 | }
|
29 |
|
30 | return line;
|
31 | }
|
Und der Aufruf mit:
1 | String userToRegister = "TestSteuerApp";
|
2 | Serial.println( Huelampe.registerUser(userToRegister) );
|
Ich bekomme einfach keine Antwort von der Bridge.
Vielleicht irgendwas mit dem Body der Anfrage verdreht?
Über Hilfe wäre ich sehr dankbar!
Viele Grüße, Petrus