Python - Как отправить правильное ответное сообщение HTTP с помощью socketserver? - PullRequest
0 голосов
/ 16 сентября 2018

У меня есть задание, где мы должны создать статический HTTP-сервер и выполнить некоторые операции GET и POST.Сейчас я пытаюсь отправить правильный ответ на запрос GET, но когда я пытаюсь подключиться к серверу через браузер, он только белый.Я предполагаю, что неправильно построил свой ответ, но у меня проблемы с поиском ошибки, так как я новичок в программировании HTTP.Вот фрагмент кода:

class MyTCPHandler (socketserver.StreamRequestHandler):
def handle(self):
    try:
      self.data = self.rfile.read().decode()
      self.status = ["HTTP/1.1 200 OK\r\n", "Content-Length: 230\r\n", "Content-Type: text/html\r\n", "\r\n"]
      with open('index.html', 'rb') as f:
           self.request.sendall(self.status[0].encode() + self.status[1].encode()
            + self.status[2].encode() + self.status[3].encode(), self.wfile.write(f.read()))

    except IOError:
        self.request.sendall('404 File not found'.encode())
...