How to access a website with multiple virtual hosts from Arduino Ethernet Shield
#include <SPI.h> | |
#include <Ethernet.h> | |
// Enter a MAC address and IP address for your controller below. | |
// The IP address will be dependent on your local network: | |
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; | |
byte ip[] = { 192, 168, 6, 30 }; | |
byte server[] = { ***, ***, 168, 16 }; // Your VPS | |
// Initialize the Ethernet client library | |
// with the IP address and port of the server | |
// that you want to connect to (port 80 is default for HTTP): | |
Client client(server, 80); | |
String response = ""; | |
void setup() { | |
Ethernet.begin(mac, ip); | |
Serial.begin(9600); | |
// Give the Ethernet shield a second to initialize | |
delay(1000); | |
Serial.println("Connecting..."); | |
} | |
void loop() { | |
if (!client.available() && client.connect()) { | |
Serial.println("-- Connected"); | |
// Make a HTTP request: | |
client.println("GET /bot HTTP/1.0"); | |
client.println("Host: example.com"); | |
client.println("User-Agent: Arduino/Shishir (mail.mastermind [at] gmail.com)"); | |
client.println(); | |
} | |
if (client.available()) { | |
char c = client.read(); | |
response.concat(c); | |
} | |
if(!client.connected()){ | |
process(response); | |
//Serial.print(response); | |
} | |
if (!client.connected() && reset == 1) { | |
Serial.println("disconnecting."); | |
client.stop(); | |
response = ""; | |
delay(1000*10); | |
} | |
} | |
void process(String response) { | |
Serial.println(response); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment