Simple HTTP Server with one page index.html stored inside MBED as char vector and javascript to update a table content

Fork of HTTP_SERVER by Akifumi Takahashi

Committer:
aktk
Date:
Fri Mar 16 21:50:43 2018 +0000
Revision:
12:cbf97b865d76
Parent:
9:84aca9965f9f
Child:
14:f21da0acc9f6
modified the type of req_buf[1024] : char* -> char; ; I have no idea why the type was pointer of array. whichever the type is, the program work well somewhat, anyway.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
aktk 0:cc483bea4fe3 1 //HTTP_SERVER.h
aktk 0:cc483bea4fe3 2 #ifndef HTTP_SERVER_H
aktk 0:cc483bea4fe3 3 #define HTTP_SERVER_H
aktk 0:cc483bea4fe3 4 #include "mbed.h"
aktk 0:cc483bea4fe3 5 #include "EthernetInterface.h"
aktk 0:cc483bea4fe3 6 #include "ResponseMessenger.h"
aktk 0:cc483bea4fe3 7 #include "FileHandler.h"
aktk 0:cc483bea4fe3 8 #include "string.h"
aktk 0:cc483bea4fe3 9 #include <stdlib.h>
aktk 0:cc483bea4fe3 10 using namespace std;
aktk 0:cc483bea4fe3 11
aktk 0:cc483bea4fe3 12 enum PortNum {
aktk 0:cc483bea4fe3 13 TCP_PORT = 80
aktk 0:cc483bea4fe3 14 };
aktk 9:84aca9965f9f 15 /** HttpServer class
aktk 9:84aca9965f9f 16 *
aktk 9:84aca9965f9f 17 * This is the class to make a mbed a simple HTTP Server.
aktk 9:84aca9965f9f 18 */
aktk 0:cc483bea4fe3 19 class HttpServer
aktk 0:cc483bea4fe3 20 {
aktk 0:cc483bea4fe3 21 public:
aktk 0:cc483bea4fe3 22 HttpServer();
aktk 0:cc483bea4fe3 23 ~HttpServer();
aktk 9:84aca9965f9f 24 /** HTTP SERVER Initialization.
aktk 9:84aca9965f9f 25 *
aktk 9:84aca9965f9f 26 * This function should be called first of all.
aktk 0:cc483bea4fe3 27 * @return result of init() as boolean.
aktk 0:cc483bea4fe3 28 * @retval TRUE SACCESS
aktk 0:cc483bea4fe3 29 * @retval FALSE
aktk 0:cc483bea4fe3 30 */
aktk 0:cc483bea4fe3 31 bool init();
aktk 9:84aca9965f9f 32 /** Run the surver service while listening flag is true.
aktk 9:84aca9965f9f 33 *
aktk 0:cc483bea4fe3 34 * @return state ending.
aktk 0:cc483bea4fe3 35 * @retval TRUE at error end.
aktk 0:cc483bea4fe3 36 * @retval FALSE at normal end.
aktk 0:cc483bea4fe3 37 */
aktk 0:cc483bea4fe3 38 bool run();
aktk 0:cc483bea4fe3 39
aktk 0:cc483bea4fe3 40 private:
aktk 0:cc483bea4fe3 41 // Handlers
aktk 0:cc483bea4fe3 42 EthernetInterface eth; // Eternet
aktk 0:cc483bea4fe3 43 TCPSocketServer tcpsvr; // TCP server
aktk 0:cc483bea4fe3 44 TCPSocketConnection tcpcon; // TCP server connection clerk
aktk 0:cc483bea4fe3 45 ResponseMessenger msger; // Messenger for a client
aktk 0:cc483bea4fe3 46 FileHandler fhandl; //
aktk 0:cc483bea4fe3 47 // Param
aktk 0:cc483bea4fe3 48 bool keep_alive;
aktk 0:cc483bea4fe3 49 bool listening_flag;
aktk 12:cbf97b865d76 50 char req_buf[1024];
aktk 0:cc483bea4fe3 51 };
aktk 0:cc483bea4fe3 52
aktk 0:cc483bea4fe3 53 #endif