이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 12121|회답: 0

[출처] 파이썬은 http.server를 사용해 HTTP 서비스를 엽니다

[링크 복사]
게시됨 2020. 12. 2. 오후 3:55:03 | | | |
요구사항: 서드파티 도구로는 파이썬 스크립트가 있습니다. 저는 C# 개발을 직접 합니다. 파이썬 자체는 능숙하지 않습니다. 파이썬 코드를 C# 코드로 변환하면 매우 어렵고, http 서비스를 열 때는 파이썬을 사용하는 것이 더 낫습니다. 인터페이스 2를 호출하고, 내부 코드를 실행하기 위해 파이썬을 실행합니다.

HTTPServer는 socketserver.TCPServer의 하위 클래스입니다. 이 프로그램은 핸들러로 요청을 디스패치하기 위해 HTTP 소켓을 생성하고 청취합니다.

문서조사:하이퍼링크 로그인이 보입니다.

팁: http.server프로덕션에는 권장하지 않습니다。 기본적인 보안 검사만 구현합니다.

코드는 다음과 같습니다:


파이썬을 사용해 포트 10254를 듣고 HTTP 서비스를 활성화한 뒤, 아래 그림에 표시된 대로 URL에 접근해 보세요:



테스트 결과는 엣지 브라우저를 여러 번, 때로는 항상 사용할 때 접근할 수 있습니다대기 중입니다예를 들어, 텔넷과 포트 10254를 통해 네이티브에서 연결을 설정한 후, 아래 사진과 같이 서버와 로컬 모두에서 http 서비스에 접근할 수 없다는 것을 발견했습니다.20분 동안 응답이 없었습니다결국 저는 다시 요청할 수밖에 없었습니다:


처음에는 "Content-Length" 설정이 없어서 브라우저가 읽어야 할 콘텐츠 바이트 수를 알 수 없고, 언제 읽기가 완료됐는지 몰랐던 게 문제라고 생각했지만, 응답 헤더 이후에도 문제는 해결되지 않았습니다.

기본값이 싱글 스레드라서 한 번에 한 클라이언트만 접근할 수 있는 걸까요?

문서를 보니 ThreadingHTTPServer라는 클래스가 있는데, 이 클래스는 스레드를 이용해 요청을 처리하며, 코드가 다음과 같이 변경됩니다:

문제 해결, 완성.






이전의:JSC를 사용해 C# 호출용 자바스크립트 DLL을 생성하세요
다음:파이썬은 미러 스테이션을 사용해 PIP 다운로드 속도를 높입니다
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com