bool http_servlet::doPost(acl::HttpServletRequest& req, acl::HttpServletResponse& res) { // 如果需要 http session 控制,请打开下面注释,且需要保证 // 在 master_service.cpp 的函数 thread_on_read 中设置的 // memcached 服务正常工作 /* const char* sid = req.getSession().getAttribute("sid"); if (*sid == 0) req.getSession().setAttribute("sid", "xxxxxx"); sid = req.getSession().getAttribute("sid"); */ res.setCharacterEncoding("utf-8") // 设置响应字符集 .setKeepAlive(req.isKeepAlive()) // 设置是否保持长连接 .setContentEncoding(false) // 自动支持压缩传输 .setChunkedTransferEncoding(false); // 采用 chunk 传输方式 acl::string path; path = req.getPathInfo(); if (path.empty()) { logger_error("getPathInfo NULL"); return doReply(req, res, 400, "%s", "no PathInfo"); } path.strip(".."); if (path.empty()) { logger_error("path empty"); return doReply(req, res, 400, "%s", "path empty"); } const std::vector<acl::string>& tokens = path.split2("/"); // printf(">>>path: %s, size: %ld\r\n", path.c_str(), tokens.size()); if (tokens.size() < 2 || !tokens[1].equal("website", false)) return doApp(req, res); else return doDoc(req, res, path); }
void VariableDlg::onDoc( wxCommandEvent& event ) { doDoc( event, "variables"); }
void AccDecDlg::onDoc( wxCommandEvent& event ) { doDoc( event, "decoders"); }
void StageDlg::onDoc( wxCommandEvent& event ) { doDoc( event, "stagingblock" ); }