Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 12121|Svar: 0

[Källa] Python använder http.server för att öppna en http-tjänst

[Kopiera länk]
Publicerad på 2020-12-02 15:55:03 | | | |
Krav: Vissa tredjepartsverktyg är pythonskript, jag utvecklar C# själv, jag är inte skicklig på python i sig, om du översätter pythonkod till C#-kod är det väldigt svårt, det är bättre att använda python för att öppna en http-tjänst, jag anropar gränssnitt två och kör slutligen python för att köra dess interna kod.

HTTPServer är en underklass av socketserver.TCPServer. Den skapar och lyssnar efter HTTP-sockets för att skicka förfrågningar till hanterare.

Dokumentation:Inloggningen med hyperlänken är synlig.

Tips: http.serverRekommenderas inte för produktion。 Den implementerar bara grundläggande säkerhetskontroller.

Koden är följande:


Använd Python för att lyssna efter port 10254, aktivera HTTP-tjänsten och försök komma åt URL:en, som visas i följande figur:



Testerna är dock tillgängliga när jag använder edge-webbläsaren för att komma åt flera gånger, ibland alltidVäntarState, efter att jag etablerat en anslutning från den inbyggda via telnet och port 10254, upptäckte jag att HTTP-tjänsten inte är tillgänglig från både servern och den lokala servern, som visas på bilden nedan,Inget svar på 20 minuter, och till slut kunde jag bara be om det igen:


Först trodde jag att det var ett problem att det inte fanns någon inställning för "Innehåll-längd", vilket gjorde att webbläsaren inte visste hur många byte innehåll som skulle läsas, och jag visste inte när läsningen var klar, men efter svarshuvudet var problemet fortfarande inte löst.

Kan det vara så att standarden är enkeltrådad, vilket tillåter att bara en klient kan komma åt gången?

När jag tittade i dokumentationen upptäckte jag att det finns en ThreadingHTTPServer-klass, som använder trådar för att behandla förfrågningar genom att använda trådar, och koden har ändrats till följande:

Problem löst, klart.






Föregående:Använd JSC för att generera en dll i JavaScript för C#-anrop
Nästa:Python använder spegelstationer för att snabba upp pip-nedladdningar
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com