Split HTTP namespace up into http_parser.h and url.h, since the URL library can be useful stand-alone as well.
This commit is contained in:
parent
e0dfc3a4db
commit
793f6f7809
7 changed files with 307 additions and 283 deletions
35
lib/url.h
Normal file
35
lib/url.h
Normal file
|
@ -0,0 +1,35 @@
|
|||
/// \file url.h
|
||||
/// Holds all headers for the HTTP::URL class.
|
||||
|
||||
#pragma once
|
||||
#include <stdlib.h>
|
||||
#include <string>
|
||||
|
||||
/// Holds all HTTP processing related code.
|
||||
namespace HTTP{
|
||||
|
||||
/// URL parsing class. Parses full URL into its subcomponents
|
||||
class URL{
|
||||
public:
|
||||
URL(const std::string &url = "");
|
||||
uint32_t getPort() const;
|
||||
uint32_t getDefaultPort() const;
|
||||
std::string getExt() const;
|
||||
std::string getUrl() const;
|
||||
std::string getFilePath() const;
|
||||
std::string getBareUrl() const;
|
||||
std::string getProxyUrl() const;
|
||||
std::string host; ///< Hostname or IP address of URL
|
||||
std::string protocol; ///< Protocol of URL
|
||||
std::string port; ///< Port of URL
|
||||
std::string path; ///< Path after the first slash (not inclusive) but before any question mark
|
||||
std::string args; ///< Everything after the question mark in the path, if it was present
|
||||
std::string frag; ///< Everything after the # in the path, if it was present
|
||||
std::string user; ///< Username, if it was present
|
||||
std::string pass; ///< Password, if it was present
|
||||
URL link(const std::string &l) const;
|
||||
bool IPv6Addr;
|
||||
};
|
||||
|
||||
}// namespace HTTP
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue