청크 인코딩 응답을 지원하는 잘 지원되는 멀티 스레드 Python HTTP 서버를 찾고 있습니다. (즉, 응답에서 "전송 인코딩 : 청크"). 이러한 목적으로 가장 좋은 HTTP 서버베이스는 무엇입니까?청크 분할 인코딩을 지원하는 Python HTTP 서버?
5
A
답변
5
꼬인 지지대 chunked transfer encoding (API link) (HTTPChannel의 API 문서 참조). Twisted를 사용하는 수많은 프로덕션 등급 프로젝트가 있습니다 (예 : Apple이 Mac OS X Server의 iCalendar 서버용으로 사용함). 따라서 지원이 뛰어나고 강력합니다.
0
저는 WSGI 준수 서버가이를 지원해야한다고 확신합니다. 기본적으로 WSGI 응용 프로그램은 웹 서버가 반환하는 반복 가능한 청크를 반환합니다. 나는 이것에 대한 직접 경험이 없지만 여기에 list of compliant servers입니다.
WSGI 서버가 파이썬의 기본 제공 CGIHTTPServer을 사용하여 찾고있는 것을 충족시키지 못한다면 스스로 롤업하는 것이 상당히 쉽다고 생각해야합니다. 그것은 이미 다중 스레드되어 있으므로 응답을 청크하는 것은 당신에게 달려 있습니다.
2
트위스트는 청크 분할 전송을 지원하며 투명하게 처리합니다. 즉, 요청 처리기가 응답 길이를 지정하지 않으면 트위스트가 자동으로 청크 분할 전송으로 전환되고 Request.write에 대한 호출 당 하나의 청크가 생성됩니다.
#!/usr/bin/env python
import logging
import tornado.httpserver
import tornado.ioloop
import tornado.options
import tornado.web
from tornado.options import define, options
define("port", default=8080, help="run on the given port", type=int)
@tornado.web.stream_request_body
class MainHandler(tornado.web.RequestHandler):
def post(self):
print()
def data_received(self, chunk):
self.write(chunk)
logging.info(chunk)
def main():
tornado.options.parse_command_line()
application = tornado.web.Application([
(r"/", MainHandler),
])
http_server = tornado.httpserver.HTTPServer(application)
http_server.listen(options.port)
tornado.ioloop.IOLoop.current().start()
if __name__ == "__main__":
main()
0
나는
Tornado를 사용하여 그것을 할 수 있었다. 나머지 부분 없이도 twisted.web을 다운로드하고 실행할 수있는 것처럼 보이기 때문에 다시 살펴 보겠습니다.
관련 문제
- 1. HTTP 청크 분할 전송 코딩 및 MFC
- 2. HTTP 청크 분할 데이터 크기와 내용 길이
- 3. 청크 분할 전송 인코딩을 사용하여 클라이언트에 데이터 전송
- 4. jQuery를 분할/청크 선택
- 5. 청크 분할 전송 디코더, C
- 6. ASP.NET에서 청크 분할 전송 인코딩 사용
- 7. 콘텐츠 인코딩을 포함한 HTTP 지원을위한 Python 라이브러리
- 8. 청크 분할 인코딩 및 콘텐츠 길이 헤더
- 9. 전송 인코딩을 비활성화하는 방법 : 청크 websphere
- 10. IE 6와 인코딩 청크 분할 문제
- 11. 콘텐츠 길이를 사용하고 인코딩을 전송하지 않도록 HTTPServer를 구성하는 방법 : 청크 분할?
- 12. 청크 분할 http 응답 예고편에 위치 헤더를 설정할 수 있습니까?
- 13. 청크 분할 인코딩 및 성능
- 14. 수정 soaplib는 청크 분할 요청
- 15. Winsock으로 청크 HTTP 데이터 수신
- 16. XML-RPC가있는 Python HTTP 서버
- 17. 공용 네트워크를 지원하는 iPhone의 HTTP 서버?
- 18. C 프로그램을 사용하여 비디오를 스트리밍하는 방법. HTTP 응답은 무엇이되어야합니까? 가능한 경우 청크 분할 인코딩을 어떻게 사용할 수 있습니까?
- 19. 압축 된 동적 콘텐츠를 사용할 때 청크 분할 전송 인코딩을 어떻게 비활성화합니까?
- 20. 활성화의 nginx 청크 분할 전송 인코딩
- 21. HTTP 청크 분할 전송 인코딩 : 어떻게 "\ r \ n"을 보냅니 까?
- 22. 청크 분할 전송에 대한 본문 읽기는 ASP.NET에서 HTTP 요청을 인코딩 함
- 23. 아약스를 통해 청크 분할 응답을 구문 분석
- 24. NSURLConnection 청크 인코딩 업로드 - 어떻게?
- 25. Firefox에서 청크 분할 전송 인코딩이 존중되지 않는 이유는 무엇입니까?
- 26. 청크 인코딩 요청을 올바르게 처리하는 방법은 무엇입니까?
- 27. Python : 복수 분할 구분자를 사용하여 파일 분할
- 28. HTTP 응답 분할
- 29. SSI를 지원하는 휴대용 서버
- 30. HTTP/1.1 청크 인코딩 응답 중단
감사합니다, 나는 트위스트 들었어요,하지만 내 첫 인상은 내 작업에 대한 비트 헤비급이었다이었다 : – slacy
나는 비틀어서 큰 API를 가지고 있고 약간 교묘하게 보이고 약간 배우는듯한 느낌이 들었다. 처음에는 저를 해 쳤지 만 때로는 작업에 적합한 도구라고 생각합니다. :-) –