Sự khác nhau giữa BaseHTTPServer và SimpleHTTPServer là gì? Tôi nên sử dụng những địa điểm này ở đâu và ở đâu?sự khác nhau giữa BaseHTTPServer và SimpleHTTPServer là gì? khi nào và ở đâu để sử dụng?
11
A
Trả lời
10
BaseHTTPServer
là thư viện máy chủ HTTP. Nó hiểu giao thức HTTP và cho phép mã của bạn xử lý các yêu cầu. Nó không có bất kỳ "logic" nào về nó. SimpleHTTPServer
được xây dựng trên đầu trang của BaseHTTPServer
và xử lý các yêu cầu theo cách tương tự như các máy chủ HTTP bình thường, tức là phân phối tệp từ hệ thống tệp. Trong hầu hết các trường hợp, bạn sẽ chỉ muốn BaseHTTPServer
, làm cơ sở để triển khai một số máy chủ phát triển cho một ứng dụng web.
Nếu bạn quan tâm đến việc làm việc trên một ứng dụng web, không phải viết một máy chủ HTTP, có thể bạn đang tìm kiếm giao diện WSGI. Nó cho phép bạn viết các ứng dụng web mà không phụ thuộc vào một máy chủ cụ thể. Ngoài ra còn có nhiều khung làm đơn giản hóa quá trình.
Các vấn đề liên quan
- 1. Sự khác nhau giữa `after_create` và` after_save` là gì và khi nào nên sử dụng?
- 2. Sự khác nhau giữa tìm, ở đâu và find_by_id là gì?
- 3. Sự khác nhau giữa Smack và aSmack là gì?
- 4. Sự khác nhau giữa CPU và Chipset là gì?
- 5. Sự khác nhau giữa Phing và PHPUnderControl là gì?
- 6. Sự khác nhau giữa HTTP_CLIENT_IP và HTTP_X_FORWARDED_FOR là gì?
- 7. sự khác nhau giữa AppDomain.CreateInstance và Activator.CreateInstance là gì?
- 8. Python: sự khác nhau giữa (1,2,3) và [1,2,3] là gì và khi nào tôi nên sử dụng mỗi?
- 9. Sự khác nhau giữa // và /// trong Visual Studio là gì?
- 10. Sự khác nhau giữa osql, isql và sqlcmd là gì?
- 11. Sự khác nhau giữa PropertyChangeListener và VetoableChangeListener là gì?
- 12. Sự khác nhau giữa static_cast và reinterpret_cast là gì?
- 13. Sự khác nhau giữa `Enum.name()` và `Enum.toString()` là gì?
- 14. Sự khác nhau giữa IPV6_ADD_MEMBERSHIP và IPV6_JOIN_GROUP là gì?
- 15. Sự khác nhau giữa ConfigurationManager.GetSection và Configuration.GetSection là gì?
- 16. Sự khác nhau giữa BSTR và _bstr_t là gì?
- 17. Sự khác nhau giữa ArrayList.clear() và ArrayList.removeAll() là gì?
- 18. Sự khác nhau giữa debug.write và Trace.write là gì?
- 19. Sự khác nhau giữa XElement và XDocument là gì?
- 20. Sự khác nhau giữa đá quý và plugin là gì?
- 21. Sự khác nhau giữa navigationController.navigationBarHidden và navigationController.navigationBar.hidden là gì?
- 22. Sự khác nhau giữa \ n và \ r \ n là gì?
- 23. Sự khác nhau giữa `DialogInterface.dismiss()` và `DialogInterface.cancel()` là gì?
- 24. Sự khác nhau giữa WebRequest.DefaultWebProxy và WebRequest.GetSystemWebProxy() là gì?
- 25. Sự khác nhau giữa dict() và {} là gì?
- 26. Sự khác nhau giữa cstdlib và stdlib.h là gì?
- 27. Sự khác nhau giữa KERN_INVALID_ADDRESS và KERN_PROTECTION_FAILURE là gì?
- 28. Sự khác nhau giữa @dynamic và @synthesize là gì?
- 29. Sự khác nhau giữa Spring BeanFactoryAware và ApplicationContextAware là gì?
- 30. Sự khác nhau giữa dataview và datatable là gì?
Chỉ cần thêm, SimpleHTTPServer cũng khá tiện dụng. Chỉ cần khởi động với $ python -m SimpleHTTPServer, và bạn đang phục vụ các tập tin của bạn bằng cách sử dụng HTTP! –
tôi đang tạo một gui web đơn giản cho apllication của tôi và tôi không muốn sử dụng các khuôn khổ như xoắn, vv. là nó có thể sử dụng wsgi với máy chủ http được xây dựng? – Sriram
Có máy chủ WSGI dựa trên 'BaseHTTPServer' trong' wsgi.simple_server'. Nhưng lợi thế của WSGI là bạn có thể sử dụng bất kỳ máy chủ WSGI nào mà bạn muốn. Bạn có thể sử dụng ví dụ máy chủ WSGI từ CherryPy, hoặc thậm chí Twisted, không cần viết mã CherryPy hoặc Twisted cụ thể. –