3 #include "EthernetInterface.h"
9 #define IP "192.168.1.100"
10 #define GATEWAY "192.168.1.1"
11 #define NETMASK "255.255.255.0"
16 EthernetInterface *
net;
29 net =
new EthernetInterface;
36 nsapi_size_or_error_t r =
net->connect();
38 printf(
"[webserver]: error! net->connect() returned: %d\n", r);
44 SocketAddress netmask;
45 SocketAddress gateway;
47 net->get_ip_address(&ip);
48 net->get_netmask(&netmask);
49 net->get_gateway(&gateway);
53 const char *ip_addr = ip.get_ip_address();
54 const char *netmask_addr = netmask.get_ip_address();
55 const char *gateway_addr = gateway.get_ip_address();
57 printf(
"[webserver]: IP address: %s\n", ip_addr ? ip_addr :
"None");
58 printf(
"[webserver]: Netmask: %s\n", netmask_addr ? netmask_addr :
"None");
59 printf(
"[webserver]: Gateway: %s\n", gateway_addr ? gateway_addr :
"None");
71 "Content-Length: %d\n"
72 "Content-Type: text\n"
73 "Connection: Close\n",
78 sprintf(
tx_buffer,
"HTTP/1.1 204 No Content\n"
79 "Connection: Close\n");
83 sprintf(
tx_buffer,
"HTTP/1.1 404 Not Found\n"
84 "Connection: Close\n");
88 sprintf(
tx_buffer,
"HTTP/1.1 500 Internal Server Error\n"
89 "Connection: Close\n");
93 printf(
"=========================================\n");
95 nsapi_error_t error = 0;
100 printf(
"[webserver]: Connection failed!\n");
105 printf(
"[webserver]: Client with IP address %s connected.\n",
111 printf(
"[webserver]: Recieved buffer is empty.\n");
116 printf(
"[webserver]: Failed to read data from client.\n");
121 printf(
"[webserver]: Recieved Data: %d bytes\n%.*s\n", strlen(
rx_buffer),
135 int len = s.length();
136 string data = s.substr(len - 11, len);
138 string temp = data.substr(0, 4);
139 string dewity = data.substr(4, 4).substr(1, 2);
140 string humidity = data.substr(8, 9);
nsapi_error_t send(TCPSocket *socket, const void *body, size_t body_size)
WebServer(Database *database)
TCPSocket * client_socket
void http_internal_server_error()
SocketAddress client_address
static const int MAX_CONN
static const char homepage[]