nicolas-arnaud
2 years ago
10 changed files with 75 additions and 104 deletions
@ -1,42 +1,35 @@ |
|||
#pragma once |
|||
#include "webserv.hpp" |
|||
|
|||
typedef std::map< string, std::vector< string > > request_t; |
|||
typedef std::map< string, vec_string > request_t; |
|||
|
|||
class Client { |
|||
int _fd; |
|||
ip_port_t _ip_port; |
|||
Master *_parent; |
|||
|
|||
string _method; |
|||
string _uri; |
|||
string _host; |
|||
int _len; |
|||
bool _last_chunk; |
|||
|
|||
Server *_server; |
|||
Route *_route; |
|||
|
|||
string _header; |
|||
string _body; |
|||
Server *_server; |
|||
Route *_route; |
|||
string _method, _uri, _host, _header, _body; |
|||
int _len; |
|||
bool _last_chunk; |
|||
request_t _request; |
|||
|
|||
public: |
|||
Client(int fd, ip_port_t ip_port, Master *parent); |
|||
~Client(void); |
|||
void clean(void); |
|||
bool getBody(string paquet); |
|||
bool parseHeader(Env *env); |
|||
string header_pick(string key, size_t id); |
|||
void answer(); |
|||
bool check_method(); |
|||
bool check_method(void); |
|||
void create_file(string path); |
|||
void send_cgi(string cgi, string path); |
|||
void send_cgi_redir(string cgi, string path); |
|||
void send_redir(int redir_code, string opt); |
|||
void send_error(int error_code); |
|||
void send_answer(string msg); |
|||
|
|||
public: |
|||
Client(int fd, ip_port_t ip_port, Master *parent); |
|||
~Client(void); |
|||
bool getHeader(Env *env, string paquet); |
|||
bool getBody(string paquet); |
|||
void answer(void); |
|||
|
|||
friend class Master; |
|||
}; |
|||
|
@ -1,10 +1,9 @@ |
|||
#include "webserv.hpp" |
|||
|
|||
void print_block(string name, string content) { |
|||
cout << name |
|||
<< "\n|===================================================" |
|||
"===========================|\n" |
|||
<< content |
|||
<< "\n|===========================================================" |
|||
"===================|\n"; |
|||
string separator = "|===================================================" |
|||
"===========================|\n"; |
|||
cout << name << separator.substr(name.length(), string::npos) << content |
|||
<< "\n" |
|||
<< separator; |
|||
} |
|||
|
Loading…
Reference in new issue