blob: e9d08f483cff2859d3c1ec1426089d99bd5b253e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
from typing import Optional
from urllib.parse import urlsplit, parse_qsl
def session_established(session):
path: Optional[bytes] = None
for key, value in session.request_headers:
if key == b':path':
path = value
assert path is not None
qs = dict(parse_qsl(urlsplit(path).query))
code = qs[b'code'] if b'code' in qs else None
reason = qs[b'reason'] if b'reason' in qs else b''
close_info = None if code is None else (int(code), reason)
session.close(close_info)
|