You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
try:
|
|
|
|
import usocket as _socket
|
|
|
|
except:
|
|
|
|
import _socket
|
|
|
|
try:
|
|
|
|
import ussl as ssl
|
|
|
|
except:
|
|
|
|
import ssl
|
|
|
|
|
|
|
|
|
|
|
|
def main(use_stream=True):
|
|
|
|
s = _socket.socket()
|
|
|
|
|
|
|
|
ai = _socket.getaddrinfo("google.com", 443)
|
|
|
|
print("Address infos:", ai)
|
|
|
|
addr = ai[0][-1]
|
|
|
|
|
|
|
|
print("Connect address:", addr)
|
|
|
|
s.connect(addr)
|
|
|
|
|
|
|
|
s = ssl.wrap_socket(s)
|
|
|
|
print(s)
|
|
|
|
|
|
|
|
if use_stream:
|
|
|
|
# Both CPython and MicroPython SSLSocket objects support read() and
|
|
|
|
# write() methods.
|
|
|
|
s.write(b"GET / HTTP/1.0\r\n\r\n")
|
|
|
|
print(s.read(4096))
|
|
|
|
else:
|
|
|
|
# MicroPython SSLSocket objects implement only stream interface, not
|
|
|
|
# socket interface
|
|
|
|
s.send(b"GET / HTTP/1.0\r\n\r\n")
|
|
|
|
print(s.recv(4096))
|
|
|
|
|
|
|
|
s.close()
|
|
|
|
|
|
|
|
|
|
|
|
main()
|