Requisitos: Algumas ferramentas de terceiros são scripts em Python, eu mesmo faço desenvolvimento de C#, não sou proficiente em Python em si, se você traduzir código em Python para C#, é muito difícil, é melhor usar Python para abrir um serviço http, chamo a interface dois e, por fim, executo o próprio Python para executar seu código interno.
HTTPServer é uma subclasse de socketserver.TCPServer. Ele cria e escuta soquetes HTTP para despachar requisições para os handlers.
Documentação:O login do hiperlink está visível.
Dica: http.serverNão recomendado para produção。 Ele implementa apenas verificações básicas de segurança.
O código é o seguinte:
Use Python para ouvir a porta 10254, habilitar o serviço HTTP e tentar acessar a URL, como mostrado na figura a seguir:
Os testes são acessíveis, no entanto, quando uso o navegador Edge para acessar várias vezes, às vezes semprependenteDepois, depois que estabeleco uma conexão do nativo via telnet e porta 10254, descobri que o serviço http não é acessível nem do servidor nem do local, como mostrado na imagem abaixo,Nenhuma resposta por 20 minutos, e no final, só pude solicitar novamente:
No começo, achei que fosse um problema por não haver uma configuração de "Comprimento do Conteúdo", fazendo com que o navegador não soubesse quantos bytes de conteúdo ler, e eu não sabia quando a leitura havia terminado, mas depois do cabeçalho da resposta, o problema ainda não foi resolvido.
Será que o padrão é single-thread, permitindo que apenas um cliente acesse por vez?
Olhando a documentação, descobri que existe uma classe ThreadingHTTPServer, que usa threads para processar requisições usando threads, e o código é alterado para o seguinte:
Problema resolvido, finalizado.
|