requesthandler.cpp 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. /**
  2. @file
  3. @author Stefan Frings
  4. */
  5. #include <logging/filelogger.h>
  6. #include "requesthandler.h"
  7. #include "qjsonobject.h"
  8. #include "qjsondocument.h"
  9. #include "qmap.h"
  10. #include "webservercontrol.h"
  11. RequestHandler::RequestHandler(QObject* parent)
  12. :HttpRequestHandler(parent)
  13. {
  14. qDebug("RequestHandler: created");
  15. }
  16. RequestHandler::~RequestHandler()
  17. {
  18. qDebug("RequestHandler: deleted");
  19. }
  20. void RequestHandler::service(HttpRequest& request, HttpResponse& response)
  21. {
  22. QMultiMap<QByteArray,QByteArray> qmapheaders = request.getHeaderMap();
  23. /** Get the map of cookies */
  24. QMap<QByteArray,QByteArray> qmapcookies = request.getCookieMap();
  25. QMultiMap<QByteArray,QByteArray> qmapParameter = request.getParameterMap();
  26. QByteArray data = request.getBody();
  27. //½â¾ö¿çÓòÎÊÌâ
  28. response.setHeader("Access-Control-Allow Origin","*");
  29. response.setHeader("Access-Control-Allow-Methods","POST, GET,OPTIONS,DELETE");
  30. response.setHeader("Access-Control-Max-Age","3600");
  31. response.setHeader("Access-Control-Allow-Headers","x-requested-with,content-type");
  32. response.setHeader("Access-Control-Allow-Credentials","true");
  33. //QJsonParseError error;
  34. //QJsonDocument doucment= QJsonDocument::fromJson(data,&error);
  35. // Set a response header
  36. //response.setHeader("Content-Type", "text/html; charset=ISO-8859-1");
  37. WebServerControl::GetInstance()->ParseJson(data);
  38. QJsonObject jsonobject;
  39. jsonobject.insert("code", "200");
  40. jsonobject.insert("msg", "success");
  41. QJsonDocument doc(jsonobject);
  42. // Return a simple HTML document
  43. response.write(doc.toJson(),true);
  44. }