From a5d07c3aba1cb3f02489777cb52ddd1908602150 Mon Sep 17 00:00:00 2001 From: Paul Sokolovsky Date: Sat, 2 Apr 2016 17:28:42 +0300 Subject: [PATCH] examples/http_client.py: Improve CPython compatibility in stream mode. --- examples/network/http_client.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/examples/network/http_client.py b/examples/network/http_client.py index d71f76b65f..548756bbf4 100644 --- a/examples/network/http_client.py +++ b/examples/network/http_client.py @@ -1,12 +1,12 @@ try: - import usocket as _socket + import usocket as socket except: - import _socket + import socket -s = _socket.socket() +s = socket.socket() -ai = _socket.getaddrinfo("google.com", 80) +ai = socket.getaddrinfo("google.com", 80) print("Address infos:", ai) addr = ai[0][4] @@ -14,8 +14,10 @@ print("Connect address:", addr) s.connect(addr) if 0: - # MicroPython rawsocket module supports file interface directly - s.write("GET / HTTP/1.0\n\n") + # MicroPython socket objects support stream (aka file) interface + # directly, but the line below is needed for CPython. + s = s.makefile("rwb", 0) + s.write(b"GET / HTTP/1.0\n\n") print(s.readall()) else: s.send(b"GET / HTTP/1.0\n\n")