Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 12121|Svare: 0

[Kilde] Python bruker http.server for å åpne en http-tjeneste

[Kopier lenke]
Publisert på 02.12.2020 15:55:03 | | | |
Krav: Noen tredjepartsverktøy er python-skript, jeg utvikler C# selv, jeg er ikke flink i python selv, hvis du oversetter python-kode til C#-kode er det veldig vanskelig, det er bedre å bruke python for å åpne en http-tjeneste, jeg kaller grensesnitt to, og til slutt kjører jeg python selv for å kjøre den interne koden.

HTTPServer er en underklasse av socketserver.TCPServer. Den oppretter og lytter etter HTTP-sockets for å sende forespørsler til håndterere.

Dokumentasjon:Innloggingen med hyperkoblingen er synlig.

Tips: http.serverAnbefales ikke for produksjon。 Den implementerer bare grunnleggende sikkerhetssjekker.

Koden er som følger:


Bruk Python for å lytte etter port 10254, aktiver HTTP-tjenesten, og prøv å få tilgang til URL-en, som vist i følgende figur:



Testene er imidlertid tilgjengelige når jeg bruker edge-nettleseren for å få tilgang flere ganger, noen ganger alltidVentertilstand, etter at jeg etablerte en tilkobling fra den native via telnet og port 10254, oppdaget jeg at http-tjenesten ikke er tilgjengelig fra både serveren og den lokale, som vist på bildet under,Ingen svar på 20 minutter, og til slutt kunne jeg bare be om det på nytt:


Først trodde jeg det var et problem at det ikke fantes noen "Innhold-lengde"-innstilling, noe som gjorde at nettleseren ikke visste hvor mange byte innhold som skulle leses, og jeg visste ikke når lesingen var ferdig, men etter svarheaderen var problemet fortsatt ikke løst.

Kan det være at standarden er enkelttrådet, slik at bare én klient får tilgang om gangen?

Da jeg så på dokumentasjonen, fant jeg at det finnes en ThreadingHTTPServer-klasse, som bruker tråder til å behandle forespørsler ved å bruke tråder, og koden er endret til følgende:

Problem løst, ferdig.






Foregående:Bruk JSC for å generere en dll i JavaScript for C#-kall
Neste:Python bruker speilstasjoner for å øke hastigheten på pip-nedlastinger
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com