本文整理汇总了C++中Params::as_data方法的典型用法代码示例。如果您正苦于以下问题:C++ Params::as_data方法的具体用法?C++ Params::as_data怎么用?C++ Params::as_data使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Params
的用法示例。
在下文中一共展示了Params::as_data方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: operator
void RequestDataParser::operator()(const HttpServer::request& request, BuildingResponse&, Params& params, function<void(RequestParser::Status)> callback)
{
{
const char* get_params = strrchr(request.destination.c_str(), '?');
std::string uri = request.destination;
// Setting Headers parameters
{
auto it = request.headers.begin();
auto end = request.headers.end();
for (; it != end ; ++it)
{
boost::network::http::request_header_narrow header = *it;
params["headers"][header.name] = header.value;
}
}
// Getting get parameters
if (get_params != 0)
{
std::string str_params(get_params);
uri.erase(uri.size() - str_params.size());
str_params.erase(0, 1);
cgi2params(params.as_data(), str_params);
}
// Set URI and method for the posterity (is that even a word ?)
params["uri"] = uri;
params["method"] = request.method;
}
callback(RequestParser::Continue);
}
示例2: body_received
void RequestJsonParser::body_received(const HttpServer::request& request, BuildingResponse&, Params& params, const string& body)
{
if (body.size() > 0)
params.as_data().merge(DataTree().from_json(body));
}