Paul Sokolovsky
3d19adf9b3
examples/network: Split recv- and read-based HTTP servers.
...
Name recv() based a "simplistic", as it can't work robustly in every
environment. All this is to let people concentreate on proper, read()-
based one (and to turn recv() based into a "negative showcase",
explaining what are the pitfalls of such approach).
2016-08-06 01:59:51 +03:00
Paul Sokolovsky
614deb82c7
examples/http_client*: Be sure to close socket.
...
Otherwise, on bare-metal/RTOS systems can lead to resource leaks.
2016-07-23 00:41:19 +03:00
Paul Sokolovsky
e3f0f31e07
examples/http_server*: Update for buffered-like streams (read line by line).
...
Since "read-exactly" stream refactor, where stream.read(N) will read
exactly N bytes (unless EOF), http_server* examples can't any longer do
client_socket.read(4096) and expect to get full request (it will block
on HTTP/1.1 client). Instead, read request line by line, as the HTTP
protocol requires.
2016-07-10 23:01:52 +03:00
Paul Sokolovsky
c2d885501f
examples/network/: Use getaddrinfo() result in easy way.
...
Instead of extracting 4th element, extact last. Much easier to remember!
2016-05-03 00:45:37 +03:00
Paul Sokolovsky
8fcfaf6f22
examples/http_server_ssl.py: HTTPS server example.
2016-04-28 21:39:17 +03:00
Paul Sokolovsky
4f2d59e82f
examples/http_client_ssl.py: HTTPS client example.
2016-04-02 23:19:03 +03:00
Paul Sokolovsky
ec5f8db49d
examples/http_server.py: Bind to 0.0.0.0, to be accessible from other hosts.
...
This is helpful when running on deeply embedded targets, but may be
"security risk". Caveat emptor.
2016-04-02 23:14:19 +03:00
Paul Sokolovsky
c07a03a36d
examples/http_server.py: Introduce main() function.
...
Allows to re-run code if it was imported as a module (e.g., on bare-metal
ports).
2016-04-02 20:57:58 +03:00
Paul Sokolovsky
aa3fb7b387
examples/http_server.py: Refactor/simplify for Python 3.5.
2016-04-02 20:53:29 +03:00
Paul Sokolovsky
fd2b71f972
examples/http_client.py: Introduce main() function.
...
Allows to re-run code if it was imported as a module (e.g., on bare-metal
ports).
2016-04-02 19:13:39 +03:00
Paul Sokolovsky
a5d07c3aba
examples/http_client.py: Improve CPython compatibility in stream mode.
2016-04-02 17:28:42 +03:00
Paul Sokolovsky
cef073877b
example/http_client.py: Remove unused code.
2016-04-01 21:10:06 +03:00
Paul Sokolovsky
cf4b72bf13
examples: http_client.py, http_server.py aren't just unix, move to network/.
2016-04-01 20:53:23 +03:00