Clinton Lee Taylor / Mbed 2 deprecated WiFiLamp

Dependencies:   ESP8266_WebServer mbed

Fork of WiFiLamp by Sebastian Schocke

Committer:
sschocke
Date:
Sat Dec 27 05:56:47 2014 +0000
Revision:
9:319aeb6e0123
Parent:
7:f15c81074400
Child:
11:3ab606a42227
Updated ESP8266 Web Server to handle multiple requests better, and to automatically analyze and populate GET parameters

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sschocke 5:42c6f9d916bc 1 #include "mbed.h"
sschocke 7:f15c81074400 2 #include <string>
sschocke 9:319aeb6e0123 3 #include <map>
sschocke 5:42c6f9d916bc 4
sschocke 5:42c6f9d916bc 5 #ifndef _ESP8266_WEB_SERVER_H
sschocke 5:42c6f9d916bc 6 #define _ESP8266_WEB_SERVER_H
sschocke 5:42c6f9d916bc 7
sschocke 9:319aeb6e0123 8 class ESP8266_WebRequest
sschocke 9:319aeb6e0123 9 {
sschocke 9:319aeb6e0123 10 char httpMethod[64];
sschocke 9:319aeb6e0123 11 char httpURI[512];
sschocke 9:319aeb6e0123 12
sschocke 9:319aeb6e0123 13 public:
sschocke 9:319aeb6e0123 14 ESP8266_WebRequest(int linkID, const char* packet, Serial* debugSerial);
sschocke 9:319aeb6e0123 15 int LinkID;
sschocke 9:319aeb6e0123 16 std::string Method;
sschocke 9:319aeb6e0123 17 std::string URI;
sschocke 9:319aeb6e0123 18 std::map<std::string, std::string> Parameters;
sschocke 9:319aeb6e0123 19 };
sschocke 9:319aeb6e0123 20
sschocke 5:42c6f9d916bc 21 class ESP8266_WebServer
sschocke 5:42c6f9d916bc 22 {
sschocke 7:f15c81074400 23 Serial *serial;
sschocke 7:f15c81074400 24 char buffer[1024];
sschocke 7:f15c81074400 25 char reply[1024];
sschocke 7:f15c81074400 26 char response[2048];
sschocke 7:f15c81074400 27 char* rxptr;
sschocke 5:42c6f9d916bc 28
sschocke 7:f15c81074400 29 private:
sschocke 7:f15c81074400 30 short data_waiting(void);
sschocke 7:f15c81074400 31 short string_waiting(const char*);
sschocke 7:f15c81074400 32 void readBuffer(void);
sschocke 7:f15c81074400 33 void sendResponse(int linkID);
sschocke 9:319aeb6e0123 34
sschocke 7:f15c81074400 35 public:
sschocke 7:f15c81074400 36 Serial *debugSerial;
sschocke 7:f15c81074400 37
sschocke 7:f15c81074400 38 ESP8266_WebServer(Serial *espUART);
sschocke 7:f15c81074400 39 void rxint(void);
sschocke 7:f15c81074400 40 void Initialize(void);
sschocke 9:319aeb6e0123 41 ESP8266_WebRequest* GetRequest(void);
sschocke 7:f15c81074400 42 void SendHTMLReply(int linkID, std::string reply);
sschocke 7:f15c81074400 43 void Send404Reply(int linkID);
sschocke 7:f15c81074400 44 };
sschocke 7:f15c81074400 45
sschocke 5:42c6f9d916bc 46 #endif