2014-04-01 13:58:52 +00:00
|
|
|
#pragma once
|
|
|
|
|
2014-04-14 15:31:51 +00:00
|
|
|
#include "common.h"
|
2014-09-10 21:32:41 +00:00
|
|
|
#include "ci_map.h"
|
2014-04-14 15:31:51 +00:00
|
|
|
|
2014-04-26 17:19:59 +00:00
|
|
|
namespace crow
|
2014-04-01 13:58:52 +00:00
|
|
|
{
|
2014-09-10 21:32:41 +00:00
|
|
|
template <typename T>
|
|
|
|
inline const std::string& get_header_value(const T& headers, const std::string& key)
|
|
|
|
{
|
|
|
|
if (headers.count(key))
|
|
|
|
{
|
|
|
|
return headers.find(key)->second;
|
|
|
|
}
|
|
|
|
static std::string empty;
|
|
|
|
return empty;
|
|
|
|
}
|
|
|
|
|
2014-04-01 13:58:52 +00:00
|
|
|
struct request
|
|
|
|
{
|
2014-04-20 08:45:10 +00:00
|
|
|
HTTPMethod method;
|
2014-04-01 13:58:52 +00:00
|
|
|
std::string url;
|
2014-09-10 21:32:41 +00:00
|
|
|
ci_map headers;
|
2014-04-01 13:58:52 +00:00
|
|
|
std::string body;
|
2014-09-06 16:24:45 +00:00
|
|
|
|
2014-09-10 21:32:41 +00:00
|
|
|
void add_header(std::string key, std::string value)
|
|
|
|
{
|
|
|
|
headers.emplace(std::move(key), std::move(value));
|
|
|
|
}
|
|
|
|
|
|
|
|
const std::string& get_header_value(const std::string& key)
|
|
|
|
{
|
|
|
|
return crow::get_header_value(headers, key);
|
|
|
|
}
|
|
|
|
|
2014-09-06 19:30:53 +00:00
|
|
|
void* middleware_context{};
|
2014-04-01 13:58:52 +00:00
|
|
|
};
|
|
|
|
}
|