Jag försöker att få till arduino att skicka in lite värden till min webbserver, dock verkar vi inte komma helt överens. Gjort lite småförändringar bara i exempel koden för pachubestring som följer med utvecklings miljön. Typ ip-adress o lite sådana små saker. Men när den postar in saker:
client.print("PUT /api/XXXXX.csv HTTP/1.1\n"); // send the HTTP PUT request. Change x's to your feed
client.print("Host: www.pachube.com\n"); // fill in your feed address here:
client.print("X-PachubeApiKey: <<<<<API KEY HERE>>>>>>\n"); // fill in your Pachube API key here:
client.print("Content-Length: ");
client.println(thisData.length(), DEC);
// last pieces of the HTTP PUT request:
client.print("Content-Type: text/csv\n");
client.println("Connection: close\n");
// here's the actual content of the PUT request:
client.println(thisData);
Ser alla strängar som skickats in i typ client.print("Content-Length: "); ok ut medans client.println(thisData); blir konstigt när man kollar med ngrep, som om de vart radbrutna efter varje tecken. Skriver jag ut motsvarande på serial istället går det bra. Ser även rätt ut när jag tar emot det med nc som mottagare istället för apache(fast ngrep visar fortfarande radbrytningarna). Kör jag det som en char array går det bra. Någon som har förslag? Jag har även testat ett annat exempel som verkar fungera men den gör egentligen samma sak men anropas inte det som en funktion. Vilket inte borde påverka. Någon annan som testat detta exempel som kan verifiera samma problematik?
Applikationens (i detta fall Apache) egen log är oftast mycket
bättre därför att den dels enbart visa det som är rellevant (d.v.s det
som har med applikationen att göra), dels ofta visar/formatterar det på
ett för applikationen rellevant sätt, kanske till och med direkt pekar
ut problemet. Vad som "skickas på trådarna" är mindre intressant, det
är det som Apache ser/upplever som gäller.
Har inte så mycket nytta av det, syns ju att trafiken inte är rätt. Gjort lite ändringar så tar apachen emot datat, dock inte rätt på snöret. Skall göra om den biten senare, gissar att en brandvägg tex med lite kvalité på inte tillåter trafiken igenom. Borde vara relativt enkelt o fixa bara man sätter sig in vad de gjort. Alternativt är att konvertera allt till en array innan man skickar till ethernetmodulen.