正在显示
1 个修改的文件
包含
76 行增加
和
0 行删除
src/server/dmpspserverresponse.cpp
0 → 100644
1 | +/************************************************************************** | |
2 | +* file: dmpspserverresponse.cpp | |
3 | + | |
4 | +* Author: wanzhongping | |
5 | +* Date: 2021-01-14 18:14:57 | |
6 | +* Email: zhongpingw@chinadci.com | |
7 | +* copyright: 广州城市信息研究所有限公司 | |
8 | +***************************************************************************/ | |
9 | +#include "dmpspserverresponse.h" | |
10 | +#include "dmplogger.h" | |
11 | +#include <boost/format.hpp> | |
12 | + | |
13 | +DmpSpServerResponse::DmpSpServerResponse(SP_HttpResponse* response) | |
14 | +{ | |
15 | + sp_response_ = response; | |
16 | + Clear(); | |
17 | +} | |
18 | + | |
19 | +void DmpSpServerResponse::SetHeader(const std::string &key, const std::string &value) | |
20 | +{ | |
21 | + sp_response_->addHeader(key.c_str(), value.c_str()); | |
22 | +} | |
23 | + | |
24 | +void DmpSpServerResponse::RemoveHeader(const std::string &key) | |
25 | +{ | |
26 | + sp_response_->removeHeader(key.c_str()); | |
27 | +} | |
28 | + | |
29 | +std::string DmpSpServerResponse::Header(const std::string &key) const | |
30 | +{ | |
31 | + return sp_response_->getHeaderValue(key.c_str()); | |
32 | +} | |
33 | + | |
34 | +ParameterMap DmpSpServerResponse::Headers() const | |
35 | +{ | |
36 | + ParameterMap headers; | |
37 | + for(int i = 0; i < sp_response_->getHeaderCount(); i++) { | |
38 | + headers[sp_response_->getHeaderName(i)] = sp_response_->getHeaderValue(i); | |
39 | + } | |
40 | + return headers; | |
41 | +} | |
42 | + | |
43 | +int DmpSpServerResponse::statusCode() const | |
44 | +{ | |
45 | + return sp_response_->getStatusCode(); | |
46 | +} | |
47 | +void DmpSpServerResponse::setStatusCode(int code) | |
48 | +{ | |
49 | + sp_response_->setStatusCode(code); | |
50 | +} | |
51 | + | |
52 | +void DmpSpServerResponse::Write(const std::string data) | |
53 | +{ | |
54 | + sp_response_->appendContent(data.c_str(),data.size()); | |
55 | +} | |
56 | + | |
57 | +void DmpSpServerResponse::WriteContent(const void * content, int length) | |
58 | +{ | |
59 | + sp_response_->appendContent(content, length); | |
60 | +} | |
61 | + | |
62 | +void DmpSpServerResponse::SendError(int code, const std::string &message) | |
63 | +{ | |
64 | + Clear(); | |
65 | + setStatusCode(code); | |
66 | + SetHeader("Content-Type", "text/html;charset=utf-8"); | |
67 | + Write(message); | |
68 | +} | |
69 | + | |
70 | +void DmpSpServerResponse::Clear() | |
71 | +{ | |
72 | + for(int i=0; i< sp_response_->getHeaderCount(); i++) | |
73 | + { | |
74 | + sp_response_->removeHeader(i); | |
75 | + } | |
76 | +} | |
\ No newline at end of file | ... | ... |
请
注册
或
登录
后发表评论