ant-http/plugins/cookiex/cookiex.c

63 lines
1004 B
C
Raw Normal View History

2015-10-22 11:49:38 +02:00
#include "../plugin.h"
void init();
call __init__ = init;
void init()
{
printf("Finish init\n");
}
void execute(int client,const char* method,dictionary rq)
{
/**
* Set cookie to the browser
*/
char* c = server_time();
dictionary d = dict();
dput(d,"test",c);
dput(d,"test1","This is another cookie");
2016-11-01 01:20:23 +01:00
set_cookie(client,"text/html; charset=utf-8",d);
2015-10-22 11:49:38 +02:00
LOG("%s",c);
__t(client,"<h1>Set the cookie</h1>");
freedict(d);
}
void get(int client,const char* method,dictionary rq)
{
2016-10-30 16:14:04 +01:00
html(client);
if(rq)
{
dictionary ck = (dictionary)dvalue(rq,"cookie");
if(ck)
{
association as;
for_each_assoc(as, ck)
{
__t(client,"%s -> %s <br/>",as->key, as->value);
}
}
else
__t(client,"noo cookie");
}
else
__t(client,"no request");
2015-10-22 11:49:38 +02:00
2016-10-29 15:02:16 +02:00
}
void handler(int client, const char* method, const char* rqpth, dictionary rq)
{
if(EQU(rqpth,"default"))
{
execute(client,method,rq);
}
2016-10-30 16:14:04 +01:00
else if(EQU(rqpth,"get"))
{
get(client,method,rq);
}
2016-10-29 15:02:16 +02:00
else
{
unknow(client);
}
2015-10-22 11:49:38 +02:00
}