| 220 | # https://stackoverflow.com/questions/4685217/parse-raw-http-headers |
| 221 | |
| 222 | def __init__(self, request_text): |
| 223 | self.comment = None |
| 224 | self.rfile = io.BytesIO(request_text) |
| 225 | self.raw_requestline = self.rfile.readline() |
| 226 | |
| 227 | if self.raw_requestline.startswith(b"HTTP request ["): |
| 228 | self.comment = self.raw_requestline |
| 229 | self.raw_requestline = self.rfile.readline() |
| 230 | |
| 231 | self.error_code = self.error_message = None |
| 232 | self.parse_request() |
| 233 | |
| 234 | def send_error(self, code, message): |
| 235 | self.error_code = code |