OSDN Git Service

backup
[mimic/MiMicSDK.git] / projects / example / sample.net.simplehttpd / src / sketch.c
index 5e7aad5..7166e6b 100644 (file)
 \r
 #include "../api/NyLPC_cNet.h"\r
 #include "../api/NyLPC_cHttpd.h"\r
+#include "../api/NyLPC_cModShortUrl.h"\r
 \r
 NyLPC_TcNet_t net;\r
 struct MyHttpd{\r
        NyLPC_TcHttpd_t super;\r
 }httpd;\r
-void handler(NyLPC_TcHttpdConnection_t* i_inst)\r
+\r
+NyLPC_TcModShortUrl_t mod_surl;\r
+\r
+void handler(NyLPC_TcHttpdConnection_t* i_connection)\r
 {\r
+       NyLPC_THttpMethodType m;\r
+       NyLPC_cModShortUrl_parse(&mod_surl,i_connection);\r
+       m=NyLPC_cModShortUrl_getMethod(&mod_surl);\r
+       if(m!=NyLPC_THttpMethodType_HEAD || m!=NyLPC_THttpMethodType_GET){\r
+               NyLPC_cHttpdConnection_sendResponseHeader(i_connection,200,"text/html",NULL);\r
+       }\r
+       if(m==NyLPC_THttpMethodType_GET){\r
+               NyLPC_cHttpdConnection_sendResponseBodyF(i_connection,"<html><body>");\r
+               NyLPC_cHttpdConnection_sendResponseBodyF(i_connection,"your request is %s",NyLPC_cModShortUrl_getPath(&mod_surl));\r
+\r
+               NyLPC_cHttpdConnection_sendResponseBodyF(i_connection,"</body></html>");\r
+       }\r
        return;\r
 }\r
 void setup(void)\r
@@ -25,6 +41,7 @@ void setup(void)
        NyLPC_cNet_initialize(&net);\r
        NyLPC_cHttpd_initialize(&httpd.super,80);\r
        httpd.super.function._handler=handler;\r
+       NyLPC_cModShortUrl_initialize(&mod_surl);\r
 }\r
 \r
 \r