Implement Basic Socket Streams
- Raw TCP communication via
tcp:// pseudo-protocol; port identification required.
- Raw UDP communication via
udp:// pseudo-protocol; port identification required.
Protocol Layering
SSL or TLS cryptography through addition of +ssl or +tls protocol suffixes.
Specific Protocol Implementations
HTTP
https://docs.python.org/3/library/urllib.request.html
https://docs.python.org/3/library/http.client.html#module-http.client
class HTTPScheme(Scheme):
def open(self, uri:URI, mode:str='r', buffering=-1, encoding=None, errors=None, newline=None) -> HTTPResponse:
...
FTP
https://docs.python.org/3/library/ftplib.html
Trivial Example
from uri import URI
from PIL import Image
with URI('https://httpbin.org/image/png').open('rb', True) as fh:
image = Image.open(fh)
...
Implement Basic Socket Streams
tcp://pseudo-protocol; port identification required.udp://pseudo-protocol; port identification required.Protocol Layering
SSL or TLS cryptography through addition of
+sslor+tlsprotocol suffixes.Specific Protocol Implementations
HTTP
FTP
Trivial Example