Encoutering OSError: [WinError 10038] Была предпринята попытка выполнить операцию на чем-то, что не является сокетом, при настройке базового c http-прокси с python - PullRequest
0 голосов
/ 02 марта 2020

Я пытался настроить простой http-прокси с использованием python, но продолжаю получать OSError: [WinError 10038] Была предпринята попытка выполнить операцию на чем-то, что не является сокетом на data = conn.recv(1024)

Что я делаю не так? Моя основная функция

def main():
    with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
        s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
        s.bind((HOST, PORT))
        s.listen()

        while True:
            conn, addr = s.accept()
            # get the next valid HTTP request
            buffer = b''
            while True:

                with conn:
                    print('Connected by: ', addr)
                data = conn.recv(1024)
                if not data:
                    break
                buffer = buffer + data;

                req, buffer = parse_message(buffer)
                if req is not None:
                    print('success');
...