Hallo Forum,
ich bin ziemlich neu im Bereich "Arduino und das Web". Mit Hilfe des Ethernet-Shields kann ich bereits eine Verbindung zum Netzwerk aufbauen, d.h. wenn ich die entsprechende IP in der Browserleiste eintippe erhalte ich die "Webseite" die ich mir ausgedacht habe.
Doch, wenn ich nun mit Hilfe von Ajax und jQuery eine Abfrage stelle passiert rein gar nichts. Hier einmal meine zwei Codes, eventuell könnt ihr mir helfen.
Arduino-Code
void weboutput()
{
// listen for incoming clients
EthernetClient client = server.available();
if (client) {
Serial.println("new client");
// an http request ends with a blank line
boolean currentLineIsBlank = true;
while (client.connected()) {
if (client.available()) {
char c = client.read();
Serial.write(c);
if (c == '\n' && currentLineIsBlank) {
// send a standard http response header
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println("Connection: close");
client.println();
client.println("<!DOCTYPE HTML>");
client.println("<html>");
client.print(" Test - WebServer ");
client.print(stunden);
client.print(":");
client.print(minuten);
client.print(":");
client.print(sekunden);
client.println("</html>");
break;
}
if (c == '\n') {
// you're starting a new line
currentLineIsBlank = true;
}
else if (c != '\r') {
// you've gotten a character on the current line
currentLineIsBlank = false;
}
}
}
// give the web browser time to receive the data
delay(1);
// close the connection:
client.stop();
Serial.println("client disonnected");
}
}
Und hier mein jQuery-Code:
$('#ipcontroll').click(function(){
$.ajax({
url: 'http://192.168.1.177/',
success: function() {
alert("Erfolgreiche Connection")
},
error: function() {
alert("keine erfolgreiche Verbindung aufgebaut");
}
});
});
vielen Dank für die Unterstützung
mfg
Gunter
Lösung, natürlich: client.println("Access-Control-Allow-Origin: *"); in den header des Documents setzen!