Skip to content
Snippets Groups Projects
Commit e2f3e1d2 authored by Paul Sokolovsky's avatar Paul Sokolovsky
Browse files

Add socket examples (simple HTTP client and server).

parent e02b2d43
No related branches found
No related tags found
No related merge requests found
mod = rawsocket
s = mod.socket()
if 1:
ai = mod.getaddrinfo("google.com", 80)
print("Address infos:", ai)
addr = ai[0][4]
else:
# Deprecated way to construct connection address
addr = mod.sockaddr_in()
addr.sin_family = 2
#addr.sin_addr = (0x0100 << 16) + 0x007f
#addr.sin_addr = (0x7f00 << 16) + 0x0001
#addr.sin_addr = mod.inet_aton("127.0.0.1")
addr.sin_addr = mod.gethostbyname("google.com")
addr.sin_port = mod.htons(80)
print("Connect address:", addr)
s.connect(addr)
s.write("GET / HTTP/1.0\n\n")
print(s.readall())
mod = rawsocket
s = mod.socket()
ai = mod.getaddrinfo("127.0.0.1", 8080)
print("Bind address info:", ai)
addr = ai[0][4]
s.bind(addr)
s.listen(5)
print("Listening, connect your browser to http://127.0.0.1:8080/")
counter = 0
while True:
res = s.accept()
client_s = res[0]
client_addr = res[1]
print("Client address:", client_addr)
print("Client socket:", client_s)
print("Request:")
print(client_s.read(4096))
#print(client_s.readall())
client_s.write("""\
HTTP/1.0 200 OK
Hello #{} from MicroPython!
""".format(counter))
client_s.close()
counter += 1
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment