📄 source.txt
字号:
#ifndef _HTTP_REQUEST_APPEARED_
#define _HTTP_REQUEST_APPEARED_
#include <map>
#include <string>
#include <vector>
#include <cassert>
#include <cstdlib>
#include <ctype.h>
namespace euc
{
class http_request
{
private:
static http_request _unique;
private:
std::multimap<std::string, std::string> _query;
std::multimap<std::string, std::string> _form;
private:
http_request();
public:
http_request(const http_request &other);
private:
void _decode(const std::string &Query,
std::multimap<std::string, std::string> &Map);
public:
// 获取提交数据,Post 方法优先于 Get 方法
std::string get_data(std::string varname) const;
// 获取多个同名提交数据
std::vector<std::string> get_data_vector
(std::string varname) const;
// 获取使用 Post 方法提交的数据,忽略 Get 方法提交的数据
std::string get_form_data(const std::string varname) const;
// 获取使用 Get 方法提交的数据,忽略 Post 方法提交的数据
std::string get_query_data(const std::string varname) const;
// 获取使用 Post 方法提交的多个同名数据,忽略 Get 方法提交的数据
std::vector<std::string> get_form_data_vector
(std::string varname) const;
// 获取使用 Get 方法提交的多个同名数据,忽略 Post 方法提交的数据
std::vector<std::string> get_query_data_vector
(std::string varname) const;
// 获取提交数据,Post 方法优先于 Get 方法,等同于 GetData
std::string operator[](const std::string varname) const;
// 获取多个同名提交数据,等同于 GetDataVector
std::vector<std::string> operator()
(const std::string varname) const;
// 获取 http_request 对象的实例
static const http_request &get_instance() { return _unique; }
private:
std::string _getdata(const std::string &varname,
const std::multimap<std::string, std::string> &Map) const;
std::vector<std::string> _getvector(const std::string &varname,
const std::multimap<std::string, std::string> &Map) const;
};
extern const http_request &request;
} // namespace
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -