mirror of
https://github.com/vee1e/mitmproxy.git
synced 2026-09-01 10:18:26 +00:00
add websocket.timestamp_end
This commit is contained in:
parent
f236ee42ed
commit
ac9852122f
4 changed files with 8 additions and 1 deletions
|
|
@ -21,7 +21,7 @@ def websocket_message(flow):
|
|||
|
||||
async def inject_async(flow: http.HTTPFlow):
|
||||
msg = "hello from mitmproxy! "
|
||||
while flow.server_conn.connected:
|
||||
while flow.websocket.timestamp_end is None:
|
||||
ctx.master.commands.call("inject", [flow], False, msg)
|
||||
await asyncio.sleep(1)
|
||||
msg = msg[1:] + msg[:1]
|
||||
|
|
|
|||
|
|
@ -291,6 +291,7 @@ def convert_11_12(data):
|
|||
"closed_by_client": ws_flow["close_sender"] == "client",
|
||||
"close_code": ws_flow["close_code"],
|
||||
"close_reason": ws_flow["close_reason"],
|
||||
"timestamp_end": data.get("server_conn", {}).get("timestamp_end", None),
|
||||
}
|
||||
|
||||
else:
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
import time
|
||||
from dataclasses import dataclass
|
||||
from typing import Iterator, List
|
||||
|
||||
|
|
@ -189,6 +190,7 @@ class WebsocketLayer(layer.Layer):
|
|||
)
|
||||
yield dst_ws.send2(ws_event)
|
||||
elif isinstance(ws_event, wsproto.events.CloseConnection):
|
||||
self.flow.websocket.timestamp_end = time.time()
|
||||
self.flow.websocket.closed_by_client = from_client
|
||||
self.flow.websocket.close_code = ws_event.code
|
||||
self.flow.websocket.close_reason = ws_event.reason
|
||||
|
|
|
|||
|
|
@ -106,11 +106,15 @@ class WebSocketData(stateobject.StateObject):
|
|||
close_reason: Optional[str] = None
|
||||
"""[Close Reason](https://tools.ietf.org/html/rfc6455#section-7.1.6)"""
|
||||
|
||||
timestamp_end: Optional[float] = None
|
||||
"""*Timestamp:* WebSocket connection closed."""
|
||||
|
||||
_stateobject_attributes = dict(
|
||||
messages=List[WebSocketMessage],
|
||||
closed_by_client=bool,
|
||||
close_code=int,
|
||||
close_reason=str,
|
||||
timestamp_end=float,
|
||||
)
|
||||
|
||||
def __init__(self):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue