mirror of
https://github.com/Grasscutters/mitmproxy.git
synced 2024-11-26 18:18:25 +00:00
Merge pull request #4194 from mplattner/docs-tutorials
Add interactive tutorials to the documentation
This commit is contained in:
commit
dbb86800e5
@ -14,6 +14,7 @@ Unreleased: mitmproxy next
|
||||
* Updated raw exports to not remove headers (@wchasekelley)
|
||||
* Fix file unlinking before external viewer finishes loading (@wchasekelley)
|
||||
* Add --cert-passphrase command line argument (@mirosyn)
|
||||
* Add interactive tutorials to the documentation (@mplattner)
|
||||
|
||||
* --- TODO: add new PRs above this line ---
|
||||
|
||||
|
@ -8,7 +8,7 @@ set -o nounset
|
||||
SCRIPTPATH="$( cd "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P )"
|
||||
pushd ${SCRIPTPATH}
|
||||
|
||||
for script in scripts/* ; do
|
||||
for script in scripts/*.py ; do
|
||||
output="${script##*/}"
|
||||
output="src/generated/${output%.*}.html"
|
||||
echo "Generating output for ${script} into ${output} ..."
|
||||
|
45
docs/scripts/clirecording/Dockerfile
Normal file
45
docs/scripts/clirecording/Dockerfile
Normal file
@ -0,0 +1,45 @@
|
||||
# todo: use a more lightweight base, e.g., Alpine Linux
|
||||
FROM ubuntu:18.04
|
||||
|
||||
ENV LANG en_US.UTF-8
|
||||
ENV LANGUAGE en_US.UTF-8
|
||||
ENV TERM screen-256color
|
||||
|
||||
# install mitmproxy, asciinema, and dependencies
|
||||
RUN apt-get update && apt-get install -y \
|
||||
asciinema \
|
||||
autoconf \
|
||||
automake \
|
||||
autotools-dev \
|
||||
bison \
|
||||
curl \
|
||||
git \
|
||||
libevent-dev \
|
||||
libtool \
|
||||
locales \
|
||||
m4 \
|
||||
make \
|
||||
ncurses-dev \
|
||||
pkg-config \
|
||||
python3-pip \
|
||||
python3 \
|
||||
wget \
|
||||
xterm \
|
||||
&& locale-gen --purge "en_US.UTF-8" \
|
||||
&& update-locale "LANG=en_US.UTF-8" \
|
||||
&& pip3 install libtmux curl requests mitmproxy
|
||||
|
||||
# install latest tmux (to support popups)
|
||||
RUN git clone https://github.com/tmux/tmux.git \
|
||||
&& cd tmux \
|
||||
&& sh autogen.sh \
|
||||
&& ./configure && make && make install
|
||||
|
||||
WORKDIR /root/clidirector
|
||||
|
||||
COPY ./docker/tmux.conf ../.tmux.conf
|
||||
COPY clidirector.py screenplays.py record.py ./
|
||||
|
||||
RUN echo 'PS1="[tutorial@mitmproxy] $ "' >> /root/.bashrc
|
||||
|
||||
ENTRYPOINT [ "./record.py" ]
|
160
docs/scripts/clirecording/clidirector.py
Normal file
160
docs/scripts/clirecording/clidirector.py
Normal file
@ -0,0 +1,160 @@
|
||||
import json
|
||||
import libtmux
|
||||
import random
|
||||
import subprocess
|
||||
import threading
|
||||
import time
|
||||
import typing
|
||||
|
||||
|
||||
class InstructionSpec(typing.NamedTuple):
|
||||
instruction: str
|
||||
time_from: float
|
||||
time_to: float
|
||||
|
||||
|
||||
class CliDirector:
|
||||
def __init__(self):
|
||||
self.record_start = None
|
||||
self.pause_between_keys = 0.2
|
||||
self.instructions: typing.List[InstructionSpec] = []
|
||||
|
||||
def start(self, filename: str, width: int = 0, height: int = 0) -> libtmux.Session:
|
||||
self.start_session(width, height)
|
||||
self.start_recording(filename)
|
||||
return self.tmux_session
|
||||
|
||||
def start_session(self, width: int = 0, height: int = 0) -> libtmux.Session:
|
||||
self.tmux_server = libtmux.Server()
|
||||
self.tmux_session = self.tmux_server.new_session(session_name="asciinema_recorder", kill_session=True)
|
||||
self.tmux_pane = self.tmux_session.attached_window.attached_pane
|
||||
self.tmux_version = self.tmux_pane.display_message("#{version}", True)
|
||||
if width and height:
|
||||
self.resize_window(width, height)
|
||||
self.pause(3)
|
||||
return self.tmux_session
|
||||
|
||||
def start_recording(self, filename: str) -> None:
|
||||
self.asciinema_proc = subprocess.Popen([
|
||||
"asciinema", "rec", "-y", "--overwrite", "-c", "tmux attach -t asciinema_recorder", filename])
|
||||
self.pause(1.5)
|
||||
self.record_start = time.time()
|
||||
|
||||
def resize_window(self, width: int, height: int) -> None:
|
||||
subprocess.Popen(["resize", "-s", str(height), str(width)], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
|
||||
|
||||
def end(self) -> None:
|
||||
self.end_recording()
|
||||
self.end_session()
|
||||
|
||||
def end_recording(self) -> None:
|
||||
self.asciinema_proc.terminate()
|
||||
self.asciinema_proc.wait(timeout=5)
|
||||
self.record_start = None
|
||||
self.instructions = []
|
||||
|
||||
def end_session(self) -> None:
|
||||
self.tmux_session.kill_session()
|
||||
|
||||
def press_key(self, keys: str, count=1, pause: typing.Optional[float] = None, target = None) -> None:
|
||||
if pause is None:
|
||||
pause = self.pause_between_keys
|
||||
if target is None:
|
||||
target = self.tmux_pane
|
||||
for i in range(count):
|
||||
if keys == " ":
|
||||
keys = "Space"
|
||||
target.send_keys(cmd=keys, enter=False, suppress_history=False)
|
||||
|
||||
# inspired by https://github.com/dmotz/TuringType
|
||||
real_pause = random.uniform(0, pause) + 0.4 * pause
|
||||
if keys == "Space":
|
||||
real_pause += 1.5 * pause
|
||||
elif keys == ".":
|
||||
real_pause += pause
|
||||
elif random.random() > 0.75:
|
||||
real_pause += pause
|
||||
elif random.random() > 0.95:
|
||||
real_pause += 2 * pause
|
||||
self.pause(real_pause)
|
||||
|
||||
def type(self, keys: str, pause: typing.Optional[float] = None, target = None) -> None:
|
||||
if pause is None:
|
||||
pause = self.pause_between_keys
|
||||
if target is None:
|
||||
target = self.tmux_pane
|
||||
target.select_pane()
|
||||
for key in keys:
|
||||
self.press_key(key, pause=pause, target=target)
|
||||
|
||||
def exec(self, keys: str, target = None) -> None:
|
||||
if target is None:
|
||||
target = self.tmux_pane
|
||||
self.type(keys, target=target)
|
||||
self.pause(1.25)
|
||||
self.press_key("Enter", target=target)
|
||||
self.pause(0.5)
|
||||
|
||||
def focus_pane(self, pane: libtmux.Pane, set_active_pane: bool = True) -> None:
|
||||
pane.select_pane()
|
||||
if set_active_pane:
|
||||
self.tmux_pane = pane
|
||||
|
||||
def pause(self, seconds: float) -> None:
|
||||
time.sleep(seconds)
|
||||
|
||||
def run_external(self, command: str) -> None:
|
||||
subprocess.run(command, shell=True)
|
||||
|
||||
def message(self, msg: str, duration: typing.Optional[int] = None, add_instruction: bool = True, instruction_html: str = "") -> None:
|
||||
if duration is None:
|
||||
duration = len(msg) * 0.08 # seconds
|
||||
self.tmux_session.set_option("display-time", int(duration * 1000)) # milliseconds
|
||||
self.tmux_pane.display_message(" " + msg)
|
||||
|
||||
if add_instruction or instruction_html:
|
||||
if not instruction_html:
|
||||
instruction_html = msg
|
||||
self.instruction(instruction=instruction_html, duration=duration)
|
||||
self.pause(duration + 0.5)
|
||||
|
||||
def popup(self, content: str, duration: int = 4) -> None:
|
||||
# todo: check if installed tmux version supports display-popup
|
||||
|
||||
# tmux's display-popup is blocking, so we close it in a separate thread
|
||||
t = threading.Thread(target=self.close_popup, args=[duration])
|
||||
t.start()
|
||||
|
||||
lines = content.splitlines()
|
||||
self.tmux_pane.cmd("display-popup", "", *lines)
|
||||
t.join()
|
||||
|
||||
def close_popup(self, duration: float = 0) -> None:
|
||||
self.pause(duration)
|
||||
self.tmux_pane.cmd("display-popup", "-C")
|
||||
|
||||
def instruction(self, instruction: str, duration: float = 3, time_from: typing.Optional[float] = None) -> None:
|
||||
if time_from is None:
|
||||
time_from = self.current_time
|
||||
|
||||
self.instructions.append(InstructionSpec(
|
||||
instruction = str(len(self.instructions) + 1) + ". " + instruction,
|
||||
time_from = round(time_from, 1),
|
||||
time_to = round(time_from + duration, 1)
|
||||
))
|
||||
|
||||
def save_instructions(self, output_path: str) -> None:
|
||||
instr_as_dicts = []
|
||||
for instr in self.instructions:
|
||||
instr_as_dicts.append(instr._asdict())
|
||||
with open(output_path, 'w', encoding='utf-8') as f:
|
||||
json.dump(instr_as_dicts, f, ensure_ascii=False, indent=4)
|
||||
|
||||
@property
|
||||
def current_time(self) -> float:
|
||||
now = time.time()
|
||||
return round(now - self.record_start, 1)
|
||||
|
||||
@property
|
||||
def current_pane(self) -> libtmux.Pane:
|
||||
return self.tmux_pane
|
21
docs/scripts/clirecording/docker/tmux.conf
Normal file
21
docs/scripts/clirecording/docker/tmux.conf
Normal file
@ -0,0 +1,21 @@
|
||||
set -g default-terminal "screen-256color"
|
||||
|
||||
set-option -g status-position top
|
||||
|
||||
set -g status-style "bg=#000000,fg=#ffffff"
|
||||
set -g message-style "bg=#3273dc,fg=#ffffff"
|
||||
|
||||
set -g status-justify left
|
||||
set -g status-left ""
|
||||
set -g status-right ""
|
||||
|
||||
setw -g window-status-current-format ""
|
||||
|
||||
|
||||
# pane options
|
||||
setw -g pane-base-index 1
|
||||
setw -g pane-border-format " Terminal Window #P --------------------------------------------------------------------------------------------------------"
|
||||
setw -g pane-border-status top
|
||||
setw -g pane-border-lines simple
|
||||
setw -g pane-border-style "fg=#cccccc"
|
||||
setw -g pane-active-border-style "fg=#ffffff"
|
6
docs/scripts/clirecording/generate_recordings.sh
Normal file
6
docs/scripts/clirecording/generate_recordings.sh
Normal file
@ -0,0 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
docker build --pull --rm -t mitmproxy-clirecorder:latest .
|
||||
docker run -i -t --rm \
|
||||
-v "$(pwd)"/../../src/static/recordings:/root/clidirector/recordings \
|
||||
mitmproxy-clirecorder:latest
|
12
docs/scripts/clirecording/record.py
Normal file
12
docs/scripts/clirecording/record.py
Normal file
@ -0,0 +1,12 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
from clidirector import CliDirector
|
||||
import screenplays
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
director = CliDirector()
|
||||
screenplays.record_user_interface(director)
|
||||
screenplays.record_intercept_requests(director)
|
||||
screenplays.record_modify_requests(director)
|
||||
screenplays.record_replay_requests(director)
|
278
docs/scripts/clirecording/screenplays.py
Normal file
278
docs/scripts/clirecording/screenplays.py
Normal file
@ -0,0 +1,278 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
from clidirector import CliDirector
|
||||
|
||||
|
||||
def record_user_interface(d: CliDirector):
|
||||
tmux = d.start_session(width=120, height=36)
|
||||
window = tmux.attached_window
|
||||
|
||||
d.start_recording("recordings/mitmproxy_user_interface.cast")
|
||||
d.message("Welcome to the mitmproxy tutorial. In this lesson we cover the user interface.")
|
||||
d.pause(1)
|
||||
d.exec("mitmproxy")
|
||||
d.pause(3)
|
||||
|
||||
d.message("This is the default view of mitmproxy.")
|
||||
d.message("mitmproxy adds rows to the view as new requests come in.")
|
||||
d.message("Let’s generate some requests using `curl` in a separate terminal.")
|
||||
|
||||
pane_top = d.current_pane
|
||||
pane_bottom = window.split_window(attach=True)
|
||||
pane_bottom.resize_pane(height=12)
|
||||
|
||||
d.focus_pane(pane_bottom)
|
||||
d.pause(2)
|
||||
|
||||
d.type("curl")
|
||||
d.message("Use curl’s `--proxy` option to configure mitmproxy as a proxy.")
|
||||
d.type(" --proxy http://127.0.0.1:8080")
|
||||
|
||||
d.message("We use the text-based weather service `wttr.in`.")
|
||||
d.exec(" \"http://wttr.in/Dunedin?0\"")
|
||||
|
||||
d.pause(2)
|
||||
d.press_key("Up")
|
||||
d.press_key("Left", count=3)
|
||||
d.press_key("BSpace", count=7)
|
||||
d.exec("Innsbruck")
|
||||
|
||||
d.pause(2)
|
||||
d.exec("exit", target=pane_bottom)
|
||||
|
||||
d.focus_pane(pane_top)
|
||||
|
||||
d.message("You see the requests to `wttr.in` in the list of flows.")
|
||||
|
||||
d.message("mitmproxy is controlled using keyboard shortcuts.")
|
||||
d.message("Use your arrow keys `↑` and `↓` to change the focused flow (`>>`).")
|
||||
d.press_key("Down", pause=0.5)
|
||||
d.press_key("Up", pause=0.5)
|
||||
d.press_key("Down", pause=0.5)
|
||||
d.press_key("Up", pause=0.5)
|
||||
|
||||
d.message("The focused flow (`>>`) is used as a target for various commands.")
|
||||
|
||||
d.message("One such command shows the flow details, it is bound to `ENTER`.")
|
||||
|
||||
d.message("Press `ENTER` to view the details of the focused flow.")
|
||||
d.press_key("Enter")
|
||||
|
||||
d.message("The flow details view has 3 panes: request, response, and detail.")
|
||||
d.message("Use your arrow keys `←` and `→` to switch between panes.")
|
||||
d.press_key("Right", count=2, pause=2.5)
|
||||
d.press_key("Left", count=2, pause=1)
|
||||
|
||||
d.message("Press `q` to exit the current view.",)
|
||||
d.type("q")
|
||||
|
||||
d.message("Press `?` to get a list of all available keyboard shortcuts.")
|
||||
d.type("?")
|
||||
d.pause(2)
|
||||
d.press_key("Down", count=20, pause=0.25)
|
||||
|
||||
d.message("Tip: Remember the `?` shortcut. It works in every view.")
|
||||
d.message("Press `q` to exit the current view.")
|
||||
d.type("q")
|
||||
|
||||
d.message("Each shortcut is internally bound to a command.")
|
||||
d.message("You can also execute commands directly (without using shortcuts).")
|
||||
d.message("Press `:` to open the command prompt at the bottom.")
|
||||
d.type(":")
|
||||
|
||||
d.message("Enter `console.view.flow @focus`.")
|
||||
d.type("console.view.flow @focus")
|
||||
|
||||
d.message("The command `console.view.flow` opens the details view for a flow.")
|
||||
|
||||
d.message("The argument `@focus` defines the target flow.")
|
||||
|
||||
d.message("Press `ENTER` to execute the command.")
|
||||
d.press_key("Enter")
|
||||
|
||||
d.message("Commands unleash the full power of mitmproxy, i.e., to configure interceptions.")
|
||||
|
||||
d.message("You now know basics of mitmproxy’s UI and how to control it.")
|
||||
d.pause(1)
|
||||
|
||||
d.message("In the next lesson you will learn to intercept flows.")
|
||||
d.save_instructions("recordings/mitmproxy_user_interface_instructions.json")
|
||||
d.end()
|
||||
|
||||
|
||||
def record_intercept_requests(d: CliDirector):
|
||||
tmux = d.start_session(width=120, height=36)
|
||||
window = tmux.attached_window
|
||||
|
||||
d.start_recording("recordings/mitmproxy_intercept_requests.cast")
|
||||
d.message("Welcome to the mitmproxy tutorial. In this lesson we cover the interception of requests.")
|
||||
d.pause(1)
|
||||
d.exec("mitmproxy")
|
||||
d.pause(3)
|
||||
|
||||
d.message("We first need to configure mitmproxy to intercept requests.")
|
||||
|
||||
d.message("Press `i` to prepopulate mitmproxy’s command prompt with `set intercept ''`.")
|
||||
d.type("i")
|
||||
d.pause(2)
|
||||
|
||||
d.message("We use the flow filter expression `~u <regex>` to only intercept specific URLs.")
|
||||
d.message("Additionally, we use the filter `~q` to only intercept requests, but not responses.")
|
||||
d.message("We combine both flow filters using `&`.")
|
||||
|
||||
d.message("Enter `~u /Dunedin & ~q` between the quotes of the `set intercept` command and press `ENTER`.")
|
||||
d.exec("~u /Dunedin & ~q")
|
||||
d.message("The bottom bar shows that the interception has been configured.")
|
||||
|
||||
d.message("Let’s generate a request using `curl` in a separate terminal.")
|
||||
|
||||
pane_top = d.current_pane
|
||||
pane_bottom = window.split_window(attach=True)
|
||||
pane_bottom.resize_pane(height=12)
|
||||
|
||||
d.focus_pane(pane_bottom)
|
||||
d.pause(2)
|
||||
|
||||
d.exec("curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"")
|
||||
d.pause(2)
|
||||
|
||||
d.focus_pane(pane_top)
|
||||
|
||||
d.message("You see a new line in in the list of flows.")
|
||||
d.message("The new flow is displayed in red to indicate that it has been intercepted.")
|
||||
d.message("Put the focus (`>>`) on the intercepted flow. This is already the case in our example.")
|
||||
d.message("Press `a` to resume this flow without making any changes.")
|
||||
d.type("a")
|
||||
d.pause(2)
|
||||
|
||||
d.focus_pane(pane_bottom)
|
||||
|
||||
d.message("Submit another request and focus its flow.")
|
||||
d.press_key("Up")
|
||||
d.press_key("Enter")
|
||||
d.pause(2)
|
||||
|
||||
d.focus_pane(pane_top)
|
||||
d.press_key("Down")
|
||||
d.pause(1)
|
||||
|
||||
d.message("Press `X` to kill this flow, i.e., discard it without forwarding it to its final destination `wttr.in`.")
|
||||
d.type("X")
|
||||
d.pause(3)
|
||||
|
||||
d.message("In the next lesson you will learn to modify intercepted flows.")
|
||||
d.save_instructions("recordings/mitmproxy_intercept_requests_instructions.json")
|
||||
d.end()
|
||||
|
||||
|
||||
def record_modify_requests(d: CliDirector):
|
||||
tmux = d.start_session(width=120, height=36)
|
||||
window = tmux.attached_window
|
||||
|
||||
d.start_recording("recordings/mitmproxy_modify_requests.cast")
|
||||
d.message("Welcome to the mitmproxy tutorial. In this lesson we cover the modification of intercepted requests.")
|
||||
d.pause(1)
|
||||
d.exec("mitmproxy")
|
||||
d.pause(3)
|
||||
|
||||
d.message("We configure and use the same interception rule as in the last tutorial.")
|
||||
d.message("Press `i` to prepopulate mitmproxy’s command prompt, enter the flow filter `~u /Dunedin & ~q`, and press `ENTER`.")
|
||||
d.type("i")
|
||||
d.pause(2)
|
||||
d.exec("~u /Dunedin & ~q")
|
||||
|
||||
d.message("Let’s generate a request using `curl` in a separate terminal.")
|
||||
|
||||
pane_top = d.current_pane
|
||||
pane_bottom = window.split_window(attach=True)
|
||||
pane_bottom.resize_pane(height=12)
|
||||
|
||||
d.focus_pane(pane_bottom)
|
||||
d.pause(2)
|
||||
|
||||
d.exec("curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"")
|
||||
d.pause(2)
|
||||
|
||||
d.focus_pane(pane_top)
|
||||
|
||||
d.message("We now want to modify the intercepted request.")
|
||||
d.message("Put the focus (`>>`) on the intercepted flow. This is already the case in our example.")
|
||||
|
||||
d.message("Press `ENTER` to open the details view for the intercepted flow.")
|
||||
d.press_key("Enter")
|
||||
|
||||
d.message("Press `e` to edit the intercepted flow.")
|
||||
d.type("e")
|
||||
|
||||
d.message("mitmproxy asks which part to modify.")
|
||||
|
||||
d.message("Select `path` by using your arrow keys and press `ENTER`.")
|
||||
d.press_key("Down", count=3, pause=0.5)
|
||||
d.pause(1)
|
||||
d.press_key("Enter")
|
||||
|
||||
d.message("mitmproxy shows all path components line by line, in our example its just `Dunedin`.")
|
||||
d.message("Press `ENTER` to modify the selected path component.")
|
||||
d.press_key("Down", pause=2)
|
||||
d.press_key("Enter")
|
||||
|
||||
d.message("Replace `Dunedin` with `Innsbruck`.")
|
||||
d.press_key("BSpace", count=7, pause=0.5)
|
||||
d.type("Innsbruck", pause=0.5)
|
||||
|
||||
d.message("Press `ESC` to confirm your change.")
|
||||
d.press_key("Escape")
|
||||
|
||||
d.message("Press `q` to go back to the flow details view.")
|
||||
d.type("q")
|
||||
|
||||
d.message("Press `a` to resume the intercepted flow.")
|
||||
d.type("a")
|
||||
d.pause(2)
|
||||
|
||||
d.message("You see that the request URL was modified and `wttr.in` replied with the weather report for `Innsbruck`.")
|
||||
|
||||
d.message("In the next lesson you will learn to replay flows.")
|
||||
d.save_instructions("recordings/mitmproxy_modify_requests_instructions.json")
|
||||
d.end()
|
||||
|
||||
|
||||
def record_replay_requests(d: CliDirector):
|
||||
tmux = d.start_session(width=120, height=36)
|
||||
window = tmux.attached_window
|
||||
|
||||
d.start_recording("recordings/mitmproxy_replay_requests.cast")
|
||||
d.message("Welcome to the mitmproxy tutorial. In this lesson we cover replaying requests.")
|
||||
d.pause(1)
|
||||
d.exec("mitmproxy")
|
||||
d.pause(3)
|
||||
|
||||
d.message("Let’s generate a request that we can replay. We use `curl` in a separate terminal.")
|
||||
|
||||
pane_top = d.current_pane
|
||||
pane_bottom = window.split_window(attach=True)
|
||||
pane_bottom.resize_pane(height=12)
|
||||
|
||||
d.focus_pane(pane_bottom)
|
||||
d.pause(2)
|
||||
|
||||
d.exec("curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"")
|
||||
d.pause(2)
|
||||
|
||||
d.focus_pane(pane_top)
|
||||
|
||||
d.message("We now want to replay the this request.")
|
||||
d.message("Put the focus (`>>`) on the request that should be replayed. This is already the case in our example.")
|
||||
d.message("Press `r` to replay the request.")
|
||||
d.type("r")
|
||||
|
||||
d.message("Note that no new rows are added for replayed flows, but the existing row is updated.")
|
||||
d.message("Every time you press `r`, mitmproxy sends this request to the server again and updates the flow.")
|
||||
d.press_key("r", count=4, pause=1)
|
||||
|
||||
d.message("You can also modify a flow before replaying it.")
|
||||
d.message("It works as shown in the previous lesson, by pressing `e`.")
|
||||
|
||||
d.message("Congratulations! You have completed all lessons of the mitmproxy tutorial.")
|
||||
d.save_instructions("recordings/mitmproxy_replay_requests_instructions.json")
|
||||
d.end()
|
2563
docs/src/assets/asciinema-player.css
Normal file
2563
docs/src/assets/asciinema-player.css
Normal file
File diff suppressed because it is too large
Load Diff
1213
docs/src/assets/asciinema-player.js
Normal file
1213
docs/src/assets/asciinema-player.js
Normal file
File diff suppressed because one or more lines are too long
45
docs/src/assets/asciinema-tutorial.js
Normal file
45
docs/src/assets/asciinema-tutorial.js
Normal file
@ -0,0 +1,45 @@
|
||||
var timer;
|
||||
|
||||
function playEvent(e) {
|
||||
var player = this;
|
||||
timer = setInterval(function(){
|
||||
updateInstructions(player);
|
||||
}, 250);
|
||||
}
|
||||
|
||||
function pauseEvent(e) {
|
||||
if (timer){
|
||||
clearInterval(timer);
|
||||
}
|
||||
}
|
||||
|
||||
function updateInstructions(player) {
|
||||
var instructions = player.instructions;
|
||||
var currTime = player.currentTime;
|
||||
for(let i = 0; i < instructions.length; i++) {
|
||||
if (instructions[i].getAttribute("data-from") < currTime
|
||||
&& instructions[i].getAttribute("data-to") > currTime) {
|
||||
instructions[i].classList.add("is-active");
|
||||
}
|
||||
else {
|
||||
instructions[i].classList.remove("is-active");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
document.addEventListener("DOMContentLoaded", function() {
|
||||
var asciinemaPlayer = document.getElementById('asciinema-player');
|
||||
asciinemaPlayer.instructions = asciinemaPlayer.parentElement.getElementsByClassName("panel-block");
|
||||
asciinemaPlayer.addEventListener("play", playEvent);
|
||||
asciinemaPlayer.addEventListener('pause', pauseEvent);
|
||||
|
||||
for(let i = 0; i < asciinemaPlayer.instructions.length; i++) {
|
||||
var instruction = asciinemaPlayer.instructions[i];
|
||||
instruction.addEventListener("click", function(e){
|
||||
asciinemaPlayer.currentTime = this.getAttribute("data-from");
|
||||
asciinemaPlayer.play();
|
||||
e.preventDefault();
|
||||
return false;
|
||||
});
|
||||
}
|
||||
});
|
@ -5,6 +5,9 @@ $primary: #C93312;
|
||||
$warning-invert: #FFFFFF;
|
||||
$family-sans-serif: BlinkMacSystemFont, -apple-system, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", "Helvetica", "Arial", sans-serif, 'Font Awesome 5 Free', 'Font Awesome 5 Brands' !default;
|
||||
|
||||
$panel-heading-size: 1em;
|
||||
$panel-heading-weight: 600;
|
||||
|
||||
/*!*
|
||||
bulma.io v0.8.0 | MIT License | github.com/jgthms/bulma */
|
||||
@import "./bulma/utilities/_all";
|
||||
@ -92,3 +95,28 @@ h1, h2, h3, h4, h5, h6 {
|
||||
figure.has-border img {
|
||||
box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.25);
|
||||
}
|
||||
|
||||
.asciicast-wrapper {
|
||||
margin: 2rem 0;
|
||||
|
||||
asciinema-player {
|
||||
display: block;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
// reset bulma pre styles
|
||||
pre.asciinema-terminal {
|
||||
padding: 0;
|
||||
overflow-x: hidden;
|
||||
-webkit-overflow-scrolling: auto;
|
||||
}
|
||||
|
||||
.panel-block {
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.panel-block.is-active .tag {
|
||||
background-color: $link;
|
||||
color: $white;
|
||||
}
|
||||
}
|
||||
|
@ -8,20 +8,7 @@ menu:
|
||||
|
||||
# Introduction
|
||||
|
||||
The mitmproxy project's tools are a set of front-ends that expose common
|
||||
underlying functionality.
|
||||
|
||||
**mitmproxy** is an interactive, SSL/TLS-capable intercepting proxy with a console interface for HTTP/1, HTTP/2, and WebSockets.
|
||||
|
||||
**mitmdump** is the command-line version of mitmproxy. Think tcpdump for HTTP.
|
||||
|
||||
**mitmweb** is a web-based interface for mitmproxy.
|
||||
|
||||
Documentation, tutorials and distribution packages can be found on the
|
||||
[mitmproxy website](https://mitmproxy.org).
|
||||
|
||||
Development information and our source code can be found in our
|
||||
[GitHub repository](https://github.com/mitmproxy/mitmproxy).
|
||||
mitmproxy is a set of tools that provide an interactive, SSL/TLS-capable intercepting proxy for HTTP/1, HTTP/2, and WebSockets.
|
||||
|
||||
|
||||
## Features
|
||||
@ -34,4 +21,114 @@ Development information and our source code can be found in our
|
||||
- Transparent proxy mode on macOS and Linux
|
||||
- Make scripted changes to HTTP traffic using Python
|
||||
- SSL/TLS certificates for interception are generated on the fly
|
||||
- And much, much more...
|
||||
- And [much, much more...]({{< relref "overview-features">}})
|
||||
|
||||
|
||||
## 3 Powerful Core Tools
|
||||
|
||||
The mitmproxy project's tools are a set of front-ends that expose common
|
||||
underlying functionality. When we talk about "mitmproxy" we usually refer to any of the three tools - they
|
||||
are just different front-ends to the same core proxy.
|
||||
|
||||
**mitmproxy** is an interactive, SSL/TLS-capable intercepting proxy with a console interface for HTTP/1, HTTP/2, and WebSockets.
|
||||
|
||||
**mitmweb** is a web-based interface for mitmproxy.
|
||||
|
||||
**mitmdump** is the command-line version of mitmproxy. Think tcpdump for HTTP.
|
||||
|
||||
Distribution packages can be found on the [mitmproxy website](https://mitmproxy.org).
|
||||
Development information and our source code can be found in our
|
||||
[GitHub repository](https://github.com/mitmproxy/mitmproxy).
|
||||
|
||||
### mitmproxy
|
||||
|
||||
{{< figure src="/screenshots/mitmproxy.png" >}}
|
||||
|
||||
**mitmproxy** is a console tool that allows interactive examination and
|
||||
modification of HTTP traffic. It differs from mitmdump in that all flows are
|
||||
kept in memory, which means that it's intended for taking and manipulating
|
||||
small-ish samples. Use the `?` shortcut key to view, context-sensitive
|
||||
documentation from any **mitmproxy** screen.
|
||||
|
||||
---
|
||||
|
||||
### mitmweb
|
||||
|
||||
{{< figure src="/screenshots/mitmweb.png" >}}
|
||||
|
||||
**mitmweb** is mitmproxy's web-based user interface that allows
|
||||
interactive examination and modification of HTTP traffic. Like
|
||||
mitmproxy, it differs from mitmdump in that all flows are kept in
|
||||
memory, which means that it's intended for taking and manipulating
|
||||
small-ish samples.
|
||||
|
||||
{{% note %}}
|
||||
Mitmweb is currently in beta. We consider it stable for all features
|
||||
currently exposed in the UI, but it still misses a lot of mitmproxy's
|
||||
features.
|
||||
{{% /note %}}
|
||||
|
||||
---
|
||||
|
||||
### mitmdump
|
||||
|
||||
**mitmdump** is the command-line companion to mitmproxy. It provides
|
||||
tcpdump-like functionality to let you view, record, and programmatically
|
||||
transform HTTP traffic. See the `--help` flag output for complete
|
||||
documentation.
|
||||
|
||||
|
||||
#### Example: Saving traffic
|
||||
|
||||
```bash
|
||||
mitmdump -w outfile
|
||||
```
|
||||
|
||||
Start up mitmdump in proxy mode, and write all traffic to **outfile**.
|
||||
|
||||
#### Filtering saved traffic
|
||||
|
||||
```bash
|
||||
mitmdump -nr infile -w outfile "~m post"
|
||||
```
|
||||
|
||||
Start mitmdump without binding to the proxy port (`-n`), read all flows
|
||||
from infile, apply the specified filter expression (only match POSTs),
|
||||
and write to outfile.
|
||||
|
||||
#### Client replay
|
||||
|
||||
```bash
|
||||
mitmdump -nC outfile
|
||||
```
|
||||
|
||||
Start mitmdump without binding to the proxy port (`-n`), then replay all
|
||||
requests from outfile (`-C filename`). Flags combine in the obvious way,
|
||||
so you can replay requests from one file, and write the resulting flows
|
||||
to another:
|
||||
|
||||
```bash
|
||||
mitmdump -nC srcfile -w dstfile
|
||||
```
|
||||
|
||||
See the [client-side replay]({{< relref "overview-features#client-side-replay"
|
||||
>}}) section for more information.
|
||||
|
||||
#### Running a script
|
||||
|
||||
```bash
|
||||
mitmdump -s examples/simple/add_header.py
|
||||
```
|
||||
|
||||
This runs the **add_header.py** example script, which simply adds a new
|
||||
header to all responses.
|
||||
|
||||
#### Scripted data transformation
|
||||
|
||||
```bash
|
||||
mitmdump -ns examples/simple/add_header.py -r srcfile -w dstfile
|
||||
```
|
||||
|
||||
This command loads flows from **srcfile**, transforms it according to
|
||||
the specified script, then writes it back to **dstfile**.
|
||||
|
||||
|
22
docs/src/content/mitmproxytutorial-interceptrequests.md
Normal file
22
docs/src/content/mitmproxytutorial-interceptrequests.md
Normal file
@ -0,0 +1,22 @@
|
||||
---
|
||||
title: "Intercept Requests"
|
||||
menu:
|
||||
mitmproxytutorial:
|
||||
weight: 2
|
||||
has_asciinema: true
|
||||
---
|
||||
|
||||
# Intercept Requests
|
||||
|
||||
A powerful feature of mitmproxy is the interception of requests.
|
||||
An intercepted request is paused so that the user can modify (or discard) the request before sending it to the server.
|
||||
mitmproxy's `set intercept` command configures interceptions.
|
||||
The command is bound to shortcut `i` by default.
|
||||
|
||||
Intercepting *all* requests is usually not desired as it constantly interrupts your browsing.
|
||||
Thus, mitmproxy expects a [flow filter expression]({{< relref "concepts-filters" >}}) as the first argument to `set intercept` to selectively intercept requests.
|
||||
In the tutorial below we use the flow filter `~u <regex>` that filters flows by matching the regular expressing on the URL of the request.
|
||||
|
||||
{{% asciicast file="mitmproxy_intercept_requests" poster="0:3" instructions=true %}}
|
||||
|
||||
In the next lesson, you will learn to modify intercepted flows before sending them to the server.
|
17
docs/src/content/mitmproxytutorial-modifyrequests.md
Normal file
17
docs/src/content/mitmproxytutorial-modifyrequests.md
Normal file
@ -0,0 +1,17 @@
|
||||
---
|
||||
title: "Modify Requests"
|
||||
menu:
|
||||
mitmproxytutorial:
|
||||
weight: 3
|
||||
has_asciinema: true
|
||||
---
|
||||
|
||||
# Modify Requests
|
||||
|
||||
In the previous step we resumed intercepted requests without changes.
|
||||
The full power of interceptions comes to play when we modify an intercepted request before forwarding it to its destination.
|
||||
You can continue with the window and the already configured interception rule from the previous step.
|
||||
|
||||
{{% asciicast file="mitmproxy_modify_requests" poster="0:3" instructions=true %}}
|
||||
|
||||
In the next lesson, you will learn to replay previous flows.
|
22
docs/src/content/mitmproxytutorial-replayrequests.md
Normal file
22
docs/src/content/mitmproxytutorial-replayrequests.md
Normal file
@ -0,0 +1,22 @@
|
||||
---
|
||||
title: "Replay Requests"
|
||||
menu:
|
||||
mitmproxytutorial:
|
||||
weight: 4
|
||||
has_asciinema: true
|
||||
---
|
||||
|
||||
# Replay Requests
|
||||
|
||||
Another powerful feature of mitmproxy is replaying previous flows.
|
||||
Two types of replays are supported:
|
||||
|
||||
* **Client-side Replay:** mitmproxy replays previous client requests, i.e., sends the same request to the server again.
|
||||
* **Server-side Replay:** mitmproxy replays server responses for requests that match an earlier recorded request.
|
||||
|
||||
In this tutorial we focus on the more common use case of client-side replays.
|
||||
See the docs for more info on [server-side replay]({{< relref "overview-features#server-side-replay" >}}).
|
||||
|
||||
{{% asciicast file="mitmproxy_replay_requests" poster="0:3" instructions=true %}}
|
||||
|
||||
You are almost done with this tutorial. In the last step you find more mitmproxy-related resources to discover.
|
19
docs/src/content/mitmproxytutorial-userinterface.md
Normal file
19
docs/src/content/mitmproxytutorial-userinterface.md
Normal file
@ -0,0 +1,19 @@
|
||||
---
|
||||
title: "User Interface"
|
||||
menu:
|
||||
mitmproxytutorial:
|
||||
weight: 1
|
||||
has_asciinema: true
|
||||
---
|
||||
|
||||
# User Interface
|
||||
|
||||
First of all, we need to become familiar with mitmproxy's user interface.
|
||||
Open the terminal window in which you started mitmproxy.
|
||||
You are in the default view of mitmproxy, which shows a list of flows.
|
||||
You should see your browser's HTTP requests to load this tutorial.
|
||||
mitmproxy adds rows to the view as new requests come in.
|
||||
|
||||
{{% asciicast file="mitmproxy_user_interface" poster="0:3" instructions=true %}}
|
||||
|
||||
In the next lesson, you will learn to intercept requests before sending them to the server.
|
42
docs/src/content/mitmproxytutorial-whatsnext.md
Normal file
42
docs/src/content/mitmproxytutorial-whatsnext.md
Normal file
@ -0,0 +1,42 @@
|
||||
---
|
||||
title: "What's Next"
|
||||
menu:
|
||||
mitmproxytutorial:
|
||||
weight: 5
|
||||
---
|
||||
|
||||
# What's Next
|
||||
|
||||
Congratulations! You have successfully completed the mitmproxy tutorial. 🎉
|
||||
|
||||
We hope it was worthwhile and helped you getting up to speed with mitmproxy.
|
||||
Is there anything you feel is missing? Or anything that is not clear? Please let us know in our <a href="https://github.com/mitmproxy/mitmproxy/issues/3142" target="_blank"> dedicated issue on GitHub</a>.
|
||||
|
||||
## Advanced usage
|
||||
|
||||
In this tutorial we have used mitmproxy to inspect requests initiated by curl.
|
||||
You probably also want to inspect web traffic from your browser or some other tool.
|
||||
To do so, you need to [configure mitmproxy as your client's proxy]({{< relref "overview-getting-started#configure-your-browser-or-device" >}}).
|
||||
|
||||
This tutorial is not meant as a replacement for our extensive docs.
|
||||
mitmproxy has far more features than what we've shown you.
|
||||
We recommend to read the documentation to get the full picture.
|
||||
|
||||
If you want to get in touch with the developers or other users, please use our [Slack channel](https://mitmproxy.slack.com).
|
||||
If you want to contribute to mitmproxy or submit a bug report or other feedback, please do so on [GitHub](https://github.com/mitmproxy/).
|
||||
|
||||
|
||||
### Customize Key bindings
|
||||
|
||||
Mitmproxy's key bindings can be customized to your needs in the
|
||||
`~/.mitmproxy/keys.yaml` file. This file consists of a sequence of maps, with
|
||||
the following keys:
|
||||
|
||||
* `key` (**mandatory**): The key to bind.
|
||||
* `cmd` (**mandatory**): The command to execute when the key is pressed.
|
||||
* `context`: A list of contexts in which the key should be bound. By default this is **global** (i.e. the key is bound everywhere). Valid contexts are `chooser`, `commands`, `dataviewer`, `eventlog`, `flowlist`, `flowview`, `global`, `grideditor`, `help`, `keybindings`, `options`.
|
||||
* `help`: A help string for the binding which will be shown in the key binding browser.
|
||||
|
||||
#### Example
|
||||
|
||||
{{< example src="examples/keys.yaml" lang="yaml" >}}
|
@ -1,12 +1,11 @@
|
||||
---
|
||||
title: "Features"
|
||||
menu: "overview"
|
||||
menu:
|
||||
overview:
|
||||
concepts:
|
||||
weight: 4
|
||||
---
|
||||
|
||||
# Mitmproxy Core Features
|
||||
# Features
|
||||
|
||||
|
||||
- [Anticache](#anticache)
|
||||
@ -79,7 +78,7 @@ Pattern | Description
|
||||
If *local-path* is a file, this file will always be served. File changes will be reflected immediately, there is no caching.
|
||||
|
||||
If *local-path* is a directory, *url-regex* is used to split the request URL in two parts and part on the right is appended to *local-path*, excluding the query string.
|
||||
However, if *url-regex* contains a regex capturing group, this behavior changes and the first capturing group is appended instead (and query strings are not stripped).
|
||||
However, if *url-regex* contains a regex capturing group, this behavior changes and the first capturing group is appended instead (and query strings are not stripped).
|
||||
Special characters are mapped to `_`. If the file cannot be found, `/index.html` is appended and we try again. Directory traversal outside of the originally specified directory is not possible.
|
||||
|
||||
To illustrate this, consider the following example which maps all requests for `example.org/css*` to the local directory `~/static-css`.
|
||||
@ -98,7 +97,7 @@ Served File: Preferred: <span style="color:#82b719">~/static-css</span><spa
|
||||
Otherwise: 404 response without content
|
||||
</pre>
|
||||
|
||||
If the file depends on the query string, we can use regex capturing groups. In this example, all `GET` requests for
|
||||
If the file depends on the query string, we can use regex capturing groups. In this example, all `GET` requests for
|
||||
`example.org/index.php?page=<page-name>` are mapped to `~/static-dir/<page-name>`:
|
||||
|
||||
<pre>
|
||||
|
@ -8,21 +8,22 @@ menu:
|
||||
|
||||
# Getting Started
|
||||
|
||||
You have already [installed]({{< relref "overview-installation">}}) mitmproxy on
|
||||
We assume you have already [installed]({{< relref "overview-installation">}}) mitmproxy on
|
||||
your machine.
|
||||
|
||||
# Launch the tool you need
|
||||
|
||||
You can start any of our three tools from the command line / terminal:
|
||||
## Launch the tool you need
|
||||
|
||||
* [mitmproxy]({{< relref "tools-mitmproxy">}}) -> gives you an interactive TUI
|
||||
* [mitmdump]({{< relref "tools-mitmdump">}}) -> gives you a plain and simple terminal output
|
||||
* [mitmweb]({{< relref "tools-mitmweb">}}) -> gives you a browser-based GUI
|
||||
You can start any of our three tools from the command line / terminal.
|
||||
|
||||
When we talk about "mitmproxy" we usually refer to any of the three tools - they
|
||||
are just different front-ends to the same core proxy.
|
||||
* **mitmproxy** gives you an interactive TUI
|
||||
* **mitmweb** gives you a browser-based GUI
|
||||
* **mitmdump** gives you a plain and simple terminal output
|
||||
|
||||
# Configure your browser or device
|
||||
In case you use the console-based version of mitmproxy, we highly recommend you to take the [tutorial]({{< relref "mitmproxytutorial-userinterface" >}}) to get started.
|
||||
|
||||
|
||||
## Configure your browser or device
|
||||
|
||||
For the basic setup as [regular proxy]({{< relref
|
||||
"concepts-modes#regular-proxy">}}), you need to configure your browser or device
|
||||
@ -39,11 +40,16 @@ Authority - which is also the next steps. Follow the instructions for your OS /
|
||||
system and install the CA (and make sure to enable it, some system require
|
||||
multiple steps!).
|
||||
|
||||
# Verifying everything works
|
||||
|
||||
## Verifying everything works
|
||||
|
||||
At this point your running mitmproxy instance should already show the first HTTP
|
||||
flows from your client. You can test that all TLS-encrypted web traffic is
|
||||
working as expected by browsing to https://mitmproxy.org - it should show up as
|
||||
new flow and you can inspect it.
|
||||
|
||||
Done.
|
||||
|
||||
## Resources
|
||||
|
||||
* [**GitHub**](https://github.com/mitmproxy/): If you want to contribute to mitmproxy or submit a bug report or other feedback, please do so on GitHub.
|
||||
* [**Slack**](https://mitmproxy.slack.com): If you want to get in touch with the developers or other users, please use our Slack channel.
|
@ -46,16 +46,16 @@ After installation, you'll find shortcuts for mitmweb and mitmdump in the start
|
||||
menu. Both executables are added to your PATH and can be invoked from the
|
||||
command line.
|
||||
|
||||
# Advanced Installation
|
||||
## Advanced Installation
|
||||
|
||||
## Development Setup
|
||||
### Development Setup
|
||||
|
||||
If you would like to install mitmproxy directly from source code or the
|
||||
GitHub master branch, please see the our
|
||||
[README](https://github.com/mitmproxy/mitmproxy#installation)
|
||||
on GitHub.
|
||||
|
||||
## Installation from the Python Package Index (PyPI)
|
||||
### Installation from the Python Package Index (PyPI)
|
||||
|
||||
If your mitmproxy addons require the installation of additional Python packages,
|
||||
you can install mitmproxy from [PyPI](https://pypi.org/project/mitmproxy/).
|
||||
@ -72,12 +72,12 @@ While there are plenty of options around[^1], we recommend the installation usin
|
||||
|
||||
To install additional Python packages, run `pipx inject mitmproxy <your-package-name>`.
|
||||
|
||||
## Docker Images
|
||||
### Docker Images
|
||||
|
||||
You can use the official mitmproxy images from
|
||||
[DockerHub](https://hub.docker.com/r/mitmproxy/mitmproxy/).
|
||||
|
||||
## Security Considerations for Binary Packages
|
||||
### Security Considerations for Binary Packages
|
||||
|
||||
Our pre-compiled binary packages and Docker images include a self-contained
|
||||
Python 3 environment, a recent version of OpenSSL that support ALPN and HTTP/2,
|
||||
|
@ -1,70 +0,0 @@
|
||||
---
|
||||
title: "mitmdump"
|
||||
menu: "tools"
|
||||
menu:
|
||||
tools:
|
||||
weight: 2
|
||||
---
|
||||
|
||||
## mitmdump
|
||||
|
||||
**mitmdump** is the command-line companion to mitmproxy. It provides
|
||||
tcpdump-like functionality to let you view, record, and programmatically
|
||||
transform HTTP traffic. See the `--help` flag output for complete
|
||||
documentation.
|
||||
|
||||
|
||||
### Example: Saving traffic
|
||||
|
||||
```bash
|
||||
mitmdump -w outfile
|
||||
```
|
||||
|
||||
Start up mitmdump in proxy mode, and write all traffic to **outfile**.
|
||||
|
||||
### Filtering saved traffic
|
||||
|
||||
```bash
|
||||
mitmdump -nr infile -w outfile "~m post"
|
||||
```
|
||||
|
||||
Start mitmdump without binding to the proxy port (`-n`), read all flows
|
||||
from infile, apply the specified filter expression (only match POSTs),
|
||||
and write to outfile.
|
||||
|
||||
### Client replay
|
||||
|
||||
```bash
|
||||
mitmdump -nC outfile
|
||||
```
|
||||
|
||||
Start mitmdump without binding to the proxy port (`-n`), then replay all
|
||||
requests from outfile (`-C filename`). Flags combine in the obvious way,
|
||||
so you can replay requests from one file, and write the resulting flows
|
||||
to another:
|
||||
|
||||
```bash
|
||||
mitmdump -nC srcfile -w dstfile
|
||||
```
|
||||
|
||||
See the [client-side replay]({{< relref "overview-features#client-side-replay"
|
||||
>}}) section for more information.
|
||||
|
||||
### Running a script
|
||||
|
||||
```bash
|
||||
mitmdump -s examples/simple/add_header.py
|
||||
```
|
||||
|
||||
This runs the **add_header.py** example script, which simply adds a new
|
||||
header to all responses.
|
||||
|
||||
### Scripted data transformation
|
||||
|
||||
```bash
|
||||
mitmdump -ns examples/simple/add_header.py -r srcfile -w dstfile
|
||||
```
|
||||
|
||||
This command loads flows from **srcfile**, transforms it according to
|
||||
the specified script, then writes it back to **dstfile**.
|
||||
|
@ -1,36 +0,0 @@
|
||||
---
|
||||
title: "mitmproxy"
|
||||
menu: "tools"
|
||||
menu:
|
||||
tools:
|
||||
weight: 1
|
||||
---
|
||||
|
||||
## mitmproxy
|
||||
|
||||
{{< figure src="/screenshots/mitmproxy.png" >}}
|
||||
|
||||
**mitmproxy** is a console tool that allows interactive examination and
|
||||
modification of HTTP traffic. It differs from mitmdump in that all flows are
|
||||
kept in memory, which means that it's intended for taking and manipulating
|
||||
small-ish samples. Use the `?` shortcut key to view, context-sensitive
|
||||
documentation from any **mitmproxy** screen.
|
||||
|
||||
### Key binding configuration
|
||||
|
||||
Mitmproxy's key bindings can be customized through in the
|
||||
`~/.mitmproxy/keys.yaml` file. This file consists of a sequence of maps, with
|
||||
the following keys:
|
||||
|
||||
* `key` (**mandatory**): The key to bind.
|
||||
* `cmd` (**mandatory**): The command to execute when the key is pressed.
|
||||
* `context`: A list of contexts in which the key should be bound. By default this is **global** (i.e. the key is bound everywhere). Valid contexts are `chooser`, `commands`, `dataviewer`, `eventlog`, `flowlist`, `flowview`, `global`, `grideditor`, `help`, `keybindings`, `options`.
|
||||
* `help`: A help string for the binding which will be shown in the key binding browser.
|
||||
|
||||
#### Example
|
||||
|
||||
{{< example src="examples/keys.yaml" lang="yaml" >}}
|
||||
|
||||
|
||||
|
||||
|
@ -1,23 +0,0 @@
|
||||
---
|
||||
title: "mitmweb"
|
||||
menu: "tools"
|
||||
menu:
|
||||
tools:
|
||||
weight: 3
|
||||
---
|
||||
|
||||
## mitmweb
|
||||
|
||||
{{< figure src="/screenshots/mitmweb.png" >}}
|
||||
|
||||
**mitmweb** is mitmproxy's web-based user interface that allows
|
||||
interactive examination and modification of HTTP traffic. Like
|
||||
mitmproxy, it differs from mitmdump in that all flows are kept in
|
||||
memory, which means that it's intended for taking and manipulating
|
||||
small-ish samples.
|
||||
|
||||
{{% note %}}
|
||||
Mitmweb is currently in beta. We consider it stable for all features
|
||||
currently exposed in the UI, but it still misses a lot of mitmproxy's
|
||||
features.
|
||||
{{% /note %}}
|
@ -8,8 +8,8 @@
|
||||
<p class="menu-label"> Overview </p>
|
||||
{{ partial "sidemenu" (dict "ctx" . "menuname" "overview") }}
|
||||
|
||||
<p class="menu-label">Tools</p>
|
||||
{{ partial "sidemenu" (dict "ctx" . "menuname" "tools") }}
|
||||
<p class="menu-label">mitmproxy Tutorial</p>
|
||||
{{ partial "sidemenu" (dict "ctx" . "menuname" "mitmproxytutorial") }}
|
||||
|
||||
<p class="menu-label">Core concepts</p>
|
||||
{{ partial "sidemenu" (dict "ctx" . "menuname" "concepts") }}
|
||||
|
19
docs/src/layouts/shortcodes/asciicast.html
Normal file
19
docs/src/layouts/shortcodes/asciicast.html
Normal file
@ -0,0 +1,19 @@
|
||||
{{ $file := .Get "file" }}
|
||||
<div class="asciicast-wrapper">
|
||||
<asciinema-player id="asciinema-player" src="/recordings/{{ $file }}.cast" font-size="13px" poster="npt:{{ .Get "poster" }}" preload></asciinema-player>
|
||||
{{- if .Get "instructions" -}}
|
||||
{{- $instructions_file := print "static/recordings/" $file "_instructions.json" -}}
|
||||
{{ $data := getJSON $instructions_file }}
|
||||
<article class="panel">
|
||||
<p class="panel-heading">
|
||||
Video Content
|
||||
</p>
|
||||
{{- range $instr := $data -}}
|
||||
<a href="#" class="panel-block" data-from="{{ $instr.time_from }}" data-to="{{ $instr.time_to }}">
|
||||
<span class="instruction-text">{{ $instr.instruction | markdownify }}</span>
|
||||
<span class="tag is-light">{{ int $instr.time_from | dateFormat "04:05" }}</span>
|
||||
</a>
|
||||
{{- end -}}
|
||||
</article>
|
||||
{{- end -}}
|
||||
</div>
|
302
docs/src/static/recordings/mitmproxy_intercept_requests.cast
Normal file
302
docs/src/static/recordings/mitmproxy_intercept_requests.cast
Normal file
@ -0,0 +1,302 @@
|
||||
{"version": 2, "width": 120, "height": 36, "timestamp": 1599237423, "env": {"SHELL": null, "TERM": "screen-256color"}}
|
||||
[0.006365, "o", "\u001b[?1049h\u001b[?1h\u001b=\u001b[H\u001b[J\u001b[34h\u001b[?25h\u001b[?1000l\u001b[?1002l\u001b[?1003l\u001b[?1006l\u001b[?1005l\u001b[m\u000f\u001b[34l\u001b[34h\u001b[?25h\u001b[?1006l\u001b[?1000l\u001b[?1002l\u001b[?1003l\u001b[?2004l\u001b[1;1H\u001b[1;36r\u001b[>c\u001b[>q\u001b[3;24H"]
|
||||
[0.00742, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[39m\u001b[3;1H[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[3;24H"]
|
||||
[0.008037, "o", "\u001b[m\u000f\u001b[34l\u001b[34h\u001b[?25h\u001b[?1006l\u001b[?1000l\u001b[?1002l\u001b[?1003l\u001b[?2004l\u001b[1;1H\u001b[1;36r\u001b[3;24H"]
|
||||
[0.008472, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[39m\u001b[3;1H[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[3;24H"]
|
||||
[1.001138, "o", "\u001b[?7727h"]
|
||||
[1.280448, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[39m\u001b[3;1H[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[3;24H"]
|
||||
[1.284961, "o", "\u001b[?25l\u001b[38;5;231m\u001b[48;5;68m\u001b[H Welcome to the mitmproxy tutorial. In this lesson we cover the interception of requests. \u001b[m\u000f\u001b[3;24H"]
|
||||
[8.330039, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[39m\u001b[3;1H[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;24H\u001b[34h\u001b[?25h"]
|
||||
[9.849596, "o", "m"]
|
||||
[9.965026, "o", "i"]
|
||||
[10.084387, "o", "t"]
|
||||
[10.194762, "o", "m"]
|
||||
[10.369843, "o", "p"]
|
||||
[10.53002, "o", "r"]
|
||||
[10.968379, "o", "o"]
|
||||
[11.384198, "o", "x"]
|
||||
[11.631229, "o", "y"]
|
||||
[13.336993, "o", "\r\n"]
|
||||
[14.085482, "o", "\u001b[?25l\u001bM\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[34h\u001b[?25h\u001b[4d\u001b[?1006h\u001b[?1002h"]
|
||||
[14.086337, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[m\u000f\u001b[34h\u001b[?25h\u001b[4;1H\u001bM\u001b[38;5;254m\u001b[48;5;240mFlows \u001b[4;1H\u001b[39m\u001b[49m \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[14.086568, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[14.086779, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[14.086833, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[?25l \u001b[33;1H "]
|
||||
[14.08689, "o", " \u001b[34;1H \u001b[35;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [0/0] [*:8080]\u001b[36;1H\u001b[39m\u001b[49m \r \u001b[36;119H "]
|
||||
[14.573436, "o", "\u001b[3;1H"]
|
||||
[17.40922, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[17.409331, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[17.409714, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[17.409779, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[17.409841, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[17.414099, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H We first need to configure mitmproxy to intercept requests. \u001b[m\u000f\u001b[3;1H"]
|
||||
[22.132444, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[22.132685, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[22.132925, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[22.133115, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[22.133254, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[22.642717, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[22.642831, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[22.643165, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[22.643243, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[22.643667, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[22.647312, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Press `i` to prepopulate mitmproxy’s command prompt with `set intercept ''`. \u001b[m\u000f\u001b[3;1H"]
|
||||
[28.724197, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[28.724298, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[28.724578, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[28.724731, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[28.724827, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[29.249423, "o", "\u001b[36d: \u001b[38;5;33mset\u001b[38;5;245m intercept ''\u001b[39m \r: \u001b[38;5;33mset\u001b[38;5;245m intercept ''\u001b[39m \u001b[36;119H \u001b[18G\u001b[34h\u001b[?25h"]
|
||||
[31.488101, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[31.488206, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[31.488476, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[31.488546, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[31.488597, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H: \u001b[38;5;33mset\u001b[38;5;245m intercept ''\u001b[39m \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[36;18H"]
|
||||
[31.492597, "o", "\u001b[?25l\u001b[38;5;231m\u001b[48;5;68m\u001b[H We use the flow filter expression `~u <regex>` to only intercept specific URLs. \u001b[m\u000f\u001b[36;18H"]
|
||||
[37.812496, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[37.812606, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[37.812864, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[37.813134, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[37.813343, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H: \u001b[38;5;33mset\u001b[38;5;245m intercept ''\u001b[39m \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[36;18H\u001b[34h\u001b[?25h"]
|
||||
[38.323977, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[38.324082, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[38.324393, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[38.324569, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[38.324883, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H: \u001b[38;5;33mset\u001b[38;5;245m intercept ''\u001b[39m \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[36;18H"]
|
||||
[38.328422, "o", "\u001b[?25l\u001b[38;5;231m\u001b[48;5;68m\u001b[H Additionally, we use the filter `~q` to only intercept requests, but not responses. \u001b[m\u000f\u001b[36;18H"]
|
||||
[44.965931, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[44.966039, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[44.966294, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[44.966525, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[44.966742, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H: \u001b[38;5;33mset\u001b[38;5;245m intercept ''\u001b[39m \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[36;18H\u001b[34h\u001b[?25h"]
|
||||
[45.480431, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[45.480538, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[45.480704, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[45.480988, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[45.481104, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H: \u001b[38;5;33mset\u001b[38;5;245m intercept ''\u001b[39m \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[36;18H"]
|
||||
[45.484877, "o", "\u001b[?25l\u001b[38;5;231m\u001b[48;5;68m\u001b[H We combine both flow filters using `&`. \u001b[m\u000f\u001b[36;18H"]
|
||||
[48.604345, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[48.604641, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[48.604827, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[48.605085, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[48.605447, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H: \u001b[38;5;33mset\u001b[38;5;245m intercept ''\u001b[39m \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[36;18H\u001b[34h\u001b[?25h"]
|
||||
[49.113588, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[49.113695, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[49.11392, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[49.11412, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[49.1143, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H: \u001b[38;5;33mset\u001b[38;5;245m intercept ''\u001b[39m \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[36;18H"]
|
||||
[49.11836, "o", "\u001b[?25l\u001b[38;5;231m\u001b[48;5;68m\u001b[H Enter `~u /Dunedin & ~q` between the quotes of the `set intercept` command and press `ENTER`. \u001b[m\u000f\u001b[36;18H"]
|
||||
[56.551954, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[56.552332, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[56.552544, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[56.552766, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[56.553023, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H: \u001b[38;5;33mset\u001b[38;5;245m intercept ''\u001b[39m \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[36;18H\u001b[34h\u001b[?25h"]
|
||||
[57.087445, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~'\u001b[39m \u001b[36;119H \u001b[19G\u001b[34h\u001b[?25h"]
|
||||
[57.368659, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u'\u001b[39m \u001b[36;119H \u001b[20G\u001b[34h\u001b[?25h"]
|
||||
[57.780644, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u '\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u '\u001b[39m \u001b[36;119H \u001b[21G\u001b[34h\u001b[?25h"]
|
||||
[58.289044, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /'\u001b[39m \u001b[36;119H \u001b[22G\u001b[34h\u001b[?25h"]
|
||||
[58.428668, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /D'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /D'\u001b[39m \u001b[36;119H \u001b[23G\u001b[34h\u001b[?25h"]
|
||||
[58.577344, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Du'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Du'\u001b[39m \u001b[36;119H \u001b[24G\u001b[34h\u001b[?25h"]
|
||||
[58.96646, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dun'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dun'\u001b[39m \u001b[36;119H \u001b[25G\u001b[34h\u001b[?25h"]
|
||||
[59.227099, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dune'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dune'\u001b[39m \u001b[36;119H \u001b[26G\u001b[34h\u001b[?25h"]
|
||||
[59.592772, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Duned'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Duned'\u001b[39m \u001b[36;119H \u001b[27G\u001b[34h\u001b[?25h"]
|
||||
[59.754612, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedi'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedi'\u001b[39m \u001b[36;119H \u001b[28G\u001b[34h\u001b[?25h"]
|
||||
[60.083731, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin'\u001b[39m \u001b[36;119H \u001b[29G\u001b[34h\u001b[?25h"]
|
||||
[60.335878, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin '\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin '\u001b[39m \u001b[36;119H \u001b[30G\u001b[34h\u001b[?25h"]
|
||||
[60.764051, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin &'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin &'\u001b[39m \u001b[36;119H \u001b[31G\u001b[34h\u001b[?25h"]
|
||||
[61.212369, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin & '\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin & '\u001b[39m \u001b[36;119H \u001b[32G\u001b[34h\u001b[?25h"]
|
||||
[61.656116, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin & ~'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin & ~'\u001b[39m \u001b[36;119H \u001b[33G\u001b[34h\u001b[?25h"]
|
||||
[61.758444, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin & ~q'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin & ~q'\u001b[39m \u001b[36;119H \u001b[34G\u001b[34h\u001b[?25h"]
|
||||
[63.389625, "o", "\u001b[35;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [0/0] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[36;1H\u001b[39m\u001b[49m \u001b[?25l\r \u001b[36;119H "]
|
||||
[63.700323, "o", "\u001b[3;1H"]
|
||||
[64.102582, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[64.102932, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[64.103222, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[64.103447, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[64.103526, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[64.107468, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H The bottom bar shows that the interception has been configured. \u001b[m\u000f\u001b[3;1H"]
|
||||
[69.141791, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[69.141897, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[69.14221, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[69.142399, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[69.14258, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[69.657828, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[69.658083, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[69.658144, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[69.658207, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[69.658275, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[69.662316, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Let’s generate a request using `curl` in a separate terminal. \u001b[m\u000f\u001b[3;1H"]
|
||||
[74.540308, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[74.540643, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[74.540916, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[74.54119, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[74.541434, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[75.061874, "o", "\u001b[38;5;252m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;231m\u001b[19;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;252m--\u001b[116C--\u001b[19;1H\u001b[38;5;231m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H "]
|
||||
[75.062186, "o", " \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H "]
|
||||
[75.062334, "o", " \u001b[17;1H \u001b[18;1H \u001b[20;1H\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[20;1H\u001b[34h\u001b[?25h\u001b[?1006l\u001b[?1002l"]
|
||||
[75.063478, "o", "\u001b[3d\u001b[38;5;254m\u001b[48;5;240mFlows \u001b[4;1H\u001b[39m\u001b[49m \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H "]
|
||||
[75.063811, "o", " \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [0/0] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[18;1H\u001b[39m\u001b[49m "]
|
||||
[75.063917, "o", " \u001b[?25l\r \u001b[18;119H \u001b[20;1H\u001b[34h\u001b[?25h"]
|
||||
[75.07318, "o", "\u001b[?25l\u001b[38;5;252m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;231m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;252m--\u001b[116C--\u001b[24;1H\u001b[38;5;231m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H "]
|
||||
[75.073299, "o", " \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H "]
|
||||
[75.073557, "o", " \u001b[38;5;254m\u001b[48;5;240m\u001b[17;1H⇩ [0/0] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[18;1H \u001b[19;1H\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[2B\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[25;1H"]
|
||||
[75.078491, "o", "[tutorial@mitmproxy] $ "]
|
||||
[75.318982, "o", "\r\u001b[K[tutorial@mitmproxy] $ "]
|
||||
[75.323205, "o", "\u001b[3;1H\u001b[38;5;254m\u001b[48;5;240mFlows \u001b[4;1H\u001b[39m\u001b[49m \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H "]
|
||||
[75.323446, "o", " \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H "]
|
||||
[75.323721, "o", " \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [0/0] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[23;1H\u001b[39m\u001b[49m \u001b[?25l\r \u001b[23;119H \u001b[25;24H\u001b[34h\u001b[?25h"]
|
||||
[75.563836, "o", "\u001b[?25l\u001b[38;5;252m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;231m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;252m--\u001b[116C--\u001b[24;1H\u001b[38;5;231m--\u001b[116C--\u001b[m\u000f\u001b[34h\u001b[?25h\u001b[25;24H"]
|
||||
[77.111134, "o", "c"]
|
||||
[77.745672, "o", "u"]
|
||||
[77.830094, "o", "r"]
|
||||
[77.992986, "o", "l"]
|
||||
[78.255834, "o", " "]
|
||||
[78.725992, "o", "-"]
|
||||
[79.2923, "o", "-"]
|
||||
[79.385843, "o", "p"]
|
||||
[79.487303, "o", "r"]
|
||||
[80.03738, "o", "o"]
|
||||
[80.421358, "o", "x"]
|
||||
[80.554271, "o", "y"]
|
||||
[80.985506, "o", " "]
|
||||
[81.394401, "o", "h"]
|
||||
[81.853914, "o", "t"]
|
||||
[82.013479, "o", "t"]
|
||||
[82.277563, "o", "p"]
|
||||
[82.404958, "o", ":"]
|
||||
[82.541932, "o", "/"]
|
||||
[82.685718, "o", "/"]
|
||||
[82.822589, "o", "1"]
|
||||
[83.05053, "o", "2"]
|
||||
[83.174172, "o", "7"]
|
||||
[83.387908, "o", "."]
|
||||
[83.792312, "o", "0"]
|
||||
[84.133667, "o", "."]
|
||||
[84.529013, "o", "0"]
|
||||
[84.68651, "o", "."]
|
||||
[85.033605, "o", "1"]
|
||||
[85.22709, "o", ":"]
|
||||
[85.510258, "o", "8"]
|
||||
[85.847568, "o", "0"]
|
||||
[86.199108, "o", "8"]
|
||||
[86.32467, "o", "0"]
|
||||
[86.684638, "o", " "]
|
||||
[87.186447, "o", "\""]
|
||||
[87.307339, "o", "h"]
|
||||
[87.439547, "o", "t"]
|
||||
[87.618981, "o", "t"]
|
||||
[87.746708, "o", "p"]
|
||||
[87.872238, "o", ":"]
|
||||
[88.298986, "o", "/"]
|
||||
[88.521767, "o", "/"]
|
||||
[88.680279, "o", "w"]
|
||||
[88.778131, "o", "t"]
|
||||
[88.915292, "o", "t"]
|
||||
[89.31891, "o", "r"]
|
||||
[89.510725, "o", "."]
|
||||
[89.955789, "o", "i"]
|
||||
[90.094694, "o", "n"]
|
||||
[90.269289, "o", "/"]
|
||||
[90.886266, "o", "D"]
|
||||
[91.109878, "o", "u"]
|
||||
[91.289759, "o", "n"]
|
||||
[91.534727, "o", "e"]
|
||||
[91.704831, "o", "d"]
|
||||
[91.923118, "o", "i"]
|
||||
[92.452553, "o", "n"]
|
||||
[92.806764, "o", "?"]
|
||||
[93.060346, "o", "0"]
|
||||
[93.267701, "o", "\""]
|
||||
[94.688183, "o", "\r\n"]
|
||||
[94.917057, "o", "\u001b[4d\u001b[38;5;245m>>\u001b[38;5;160m16:38:37\u001b[39m \u001b[38;5;160mHTTP \u001b[39m \u001b[38;5;160mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[22;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[26;1H\u001b[m\u000f"]
|
||||
[97.324081, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[m\u000f\u001b[34h\u001b[?25h\u001b[3;1H\u001b[?25l\u001b[?1006h\u001b[?1002h"]
|
||||
[97.324964, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[m\u000f\u001b[3;1H"]
|
||||
[97.337338, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>\u001b[38;5;160m16:38:37\u001b[39m \u001b[38;5;160mHTTP \u001b[39m \u001b[38;5;160mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[97.337595, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[97.337952, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] "]
|
||||
[97.338388, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[97.342227, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H You see a new line in in the list of flows. \u001b[m\u000f\u001b[3;1H"]
|
||||
[100.789214, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>\u001b[38;5;160m16:38:37\u001b[39m \u001b[38;5;160mHTTP \u001b[39m \u001b[38;5;160mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[100.789328, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[100.789627, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] "]
|
||||
[100.789809, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[101.292292, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>\u001b[38;5;160m16:38:37\u001b[39m \u001b[38;5;160mHTTP \u001b[39m \u001b[38;5;160mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[101.292937, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[101.293301, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] "]
|
||||
[101.293996, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[101.300607, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H The new flow is displayed in red to indicate that it has been intercepted. \u001b[m\u000f\u001b[3;1H"]
|
||||
[107.228312, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>\u001b[38;5;160m16:38:37\u001b[39m \u001b[38;5;160mHTTP \u001b[39m \u001b[38;5;160mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[107.22858, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[107.22892, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] "]
|
||||
[107.229035, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[107.736139, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>\u001b[38;5;160m16:38:37\u001b[39m \u001b[38;5;160mHTTP \u001b[39m \u001b[38;5;160mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[107.736688, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[107.737048, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] "]
|
||||
[107.737279, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[107.74331, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Put the focus (`>>`) on the intercepted flow. This is already the case in our example. \u001b[m\u000f\u001b[3;1H"]
|
||||
[114.622956, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>\u001b[38;5;160m16:38:37\u001b[39m \u001b[38;5;160mHTTP \u001b[39m \u001b[38;5;160mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[114.623063, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[114.623227, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] "]
|
||||
[114.623406, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[115.136838, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>\u001b[38;5;160m16:38:37\u001b[39m \u001b[38;5;160mHTTP \u001b[39m \u001b[38;5;160mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[115.137121, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[115.137297, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] "]
|
||||
[115.137362, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[115.142971, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Press `a` to resume this flow without making any changes. \u001b[m\u000f\u001b[3;1H"]
|
||||
[119.705108, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>\u001b[38;5;160m16:38:37\u001b[39m \u001b[38;5;160mHTTP \u001b[39m \u001b[38;5;160mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[119.705229, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[119.705384, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] "]
|
||||
[119.705718, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[120.230462, "o", "\r\n\u001b[38;5;245m>>16:38:37\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[4;120H"]
|
||||
[120.307117, "o", "\r\u001b[38;5;245m>>16:38:37\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m…\u001b[38;5;240mntent missing]\u001b[39m \u001b[4;120H"]
|
||||
[120.31011, "o", "\u001b[26;1HWeather report: Dunedin\u001b[28;1H \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \u001b[4;120H"]
|
||||
[120.311302, "o", "\u001b[33;1H[tutorial@mitmproxy] $ \u001b[4;120H"]
|
||||
[120.315683, "o", "\r\u001b[38;5;245m>>16:38:37\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;196m25.6s\u001b[39m \u001b[4;120H"]
|
||||
[120.497977, "o", "\u001b[3;1H"]
|
||||
[122.321128, "o", "\u001b[38;5;252m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;231m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;252m--\u001b[116C--\u001b[24;1H\u001b[38;5;231m--\u001b[116C--\u001b[m\u000f\u001b[33;24H\u001b[34h\u001b[?25h\u001b[?1006l\u001b[?1002l"]
|
||||
[122.334337, "o", "\u001b[?25l\u001b[38;5;252m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;231m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;252m--\u001b[116C--\u001b[24;1H\u001b[38;5;231m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:38:37\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;196m25.6s\u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[122.334454, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[122.334482, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q]"]
|
||||
[122.33471, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Dunedin\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\u001b[K\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[33;24H"]
|
||||
[122.338875, "o", "\u001b[?25l\u001b[38;5;231m\u001b[48;5;68m\u001b[H Submit another request and focus its flow. \u001b[m\u000f\u001b[33;24H"]
|
||||
[122.499739, "o", "\u001b[38;5;252m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;231m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;252m--\u001b[116C--\u001b[24;1H\u001b[38;5;231m--\u001b[116C--\u001b[m\u000f\u001b[33;24H"]
|
||||
[125.691221, "o", "\u001b[38;5;252m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;231m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;252m--\u001b[116C--\u001b[24;1H\u001b[38;5;231m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:38:37\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;196m25.6s\u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[125.691331, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[125.691605, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] "]
|
||||
[125.691808, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Dunedin\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\u001b[K\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[33;24H\u001b[34h\u001b[?25h"]
|
||||
[126.207621, "o", "curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\""]
|
||||
[126.489862, "o", "\r\n"]
|
||||
[126.51011, "o", "\u001b[5d \u001b[38;5;160m16:39:09\u001b[39m \u001b[38;5;160mHTTP \u001b[39m \u001b[38;5;160mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[22;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [1/2] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[34;1H\u001b[m\u000f"]
|
||||
[127.01817, "o", "\u001b[?25l\u001b[38;5;252m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;231m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;252m--\u001b[116C--\u001b[24;1H\u001b[38;5;231m--\u001b[116C--\u001b[m\u000f\u001b[34h\u001b[?25h\u001b[34;1H"]
|
||||
[128.871942, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[m\u000f\u001b[34h\u001b[?25h\u001b[3;1H\u001b[?25l\u001b[?1006h\u001b[?1002h"]
|
||||
[128.872741, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[m\u000f\u001b[3;1H"]
|
||||
[128.892421, "o", "\r\n \u001b[38;5;245m16:38:37\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;196m25.6s\u001b[39m \u001b[5;1H\u001b[38;5;245m>>\u001b[38;5;160m16:39:09\u001b[39m \u001b[38;5;160mHTTP \u001b[39m \u001b[38;5;160mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[22;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [2/2] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[22;120H\u001b[m\u000f"]
|
||||
[129.018568, "o", "\u001b[3;1H"]
|
||||
[130.091815, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[38;5;245m16:38:37\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;196m25.6s\u001b[39m \u001b[38;5;245m\u001b[5;1H>>\u001b[38;5;160m16:39:09\u001b[39m \u001b[38;5;160mHTTP \u001b[39m \u001b[38;5;160mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;"]
|
||||
[130.092045, "o", "5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H "]
|
||||
[130.092284, "o", " \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H "]
|
||||
[130.092602, "o", " \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [2/2] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Dunedin\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\u001b[K\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \u001b[K\r\n[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b["]
|
||||
[130.092848, "o", "K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[130.096526, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Press `X` to kill this flow, i.e., discard it without forwarding it to its final destination `wttr.in`. \u001b[m\u000f\u001b[3;1H"]
|
||||
[138.335707, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[38;5;245m16:38:37\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;196m25.6s\u001b[39m \u001b[38;5;245m\u001b[5;1H>>\u001b[38;5;160m16:39:09\u001b[39m \u001b[38;5;160mHTTP \u001b[39m \u001b[38;5;160mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;"]
|
||||
[138.335814, "o", "5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H "]
|
||||
[138.336017, "o", " \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H "]
|
||||
[138.336192, "o", " \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [2/2] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Dunedin\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\u001b[K\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \u001b[K\r\n[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b["]
|
||||
[138.336419, "o", "K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[138.856862, "o", "\u001b[34dcurl: (52) Empty reply from server\u001b[3;1H"]
|
||||
[138.858018, "o", "\u001b[35d[tutorial@mitmproxy] $ \u001b[3;1H"]
|
||||
[138.862771, "o", "\u001b[2B\u001b[38;5;245m>>16:39:09\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;160merr\u001b[39m \u001b[38;5;245m…\u001b[38;5;160mnection killed\u001b[39m \u001b[23;1H\u001b[38;5;125mAlert: Killed 1 flows.\u001b[39m \u001b[38;5;125m\rAlert: Killed 1 flows.\u001b[39m \u001b[23;119H "]
|
||||
[139.046369, "o", "\u001b[3;1H"]
|
||||
[142.266214, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[38;5;245m16:38:37\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;196m25.6s\u001b[39m \u001b[38;5;245m\u001b[5;1H>>16:39:09\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m "]
|
||||
[142.266325, "o", " \u001b[39m \u001b[38;5;160merr\u001b[39m \u001b[38;5;245m…\u001b[38;5;160mnection killed\u001b[39m \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H "]
|
||||
[142.266684, "o", " \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H "]
|
||||
[142.266748, "o", " \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [2/2] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[49m\u001b[38;5;125m\u001b[23;1HAlert: Killed 1 flows.\u001b[39m \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Dunedin\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\u001b[K\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \u001b[K\r\n[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\ncurl: "]
|
||||
[142.26681, "o", "(52) Empty reply from server\u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[142.273856, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H In the next lesson you will learn to modify intercepted flows. \u001b[m\u000f\u001b[3;1H"]
|
||||
[143.860001, "o", "\u001b[23;120H"]
|
||||
[144.063688, "o", "\u001b[3;1H"]
|
||||
[147.231377, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[38;5;245m16:38:37\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;196m25.6s\u001b[39m \u001b[38;5;245m\u001b[5;1H>>16:39:09\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m "]
|
||||
[147.231493, "o", " \u001b[39m \u001b[38;5;160merr\u001b[39m \u001b[38;5;245m…\u001b[38;5;160mnection killed\u001b[39m \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H "]
|
||||
[147.23157, "o", " \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H "]
|
||||
[147.231826, "o", " \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [2/2] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Dunedin\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\u001b[K\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \u001b[K\r\n[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\ncurl: (52) Empty "]
|
||||
[147.232053, "o", "reply from server\u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
@ -0,0 +1,82 @@
|
||||
[
|
||||
{
|
||||
"instruction": "1. Welcome to the mitmproxy tutorial. In this lesson we cover the interception of requests.",
|
||||
"time_from": 0.0,
|
||||
"time_to": 7.0
|
||||
},
|
||||
{
|
||||
"instruction": "2. We first need to configure mitmproxy to intercept requests.",
|
||||
"time_from": 16.1,
|
||||
"time_to": 20.8
|
||||
},
|
||||
{
|
||||
"instruction": "3. Press `i` to prepopulate mitmproxy’s command prompt with `set intercept ''`.",
|
||||
"time_from": 21.4,
|
||||
"time_to": 27.5
|
||||
},
|
||||
{
|
||||
"instruction": "4. We use the flow filter expression `~u <regex>` to only intercept specific URLs.",
|
||||
"time_from": 30.2,
|
||||
"time_to": 36.5
|
||||
},
|
||||
{
|
||||
"instruction": "5. Additionally, we use the filter `~q` to only intercept requests, but not responses.",
|
||||
"time_from": 37.1,
|
||||
"time_to": 43.7
|
||||
},
|
||||
{
|
||||
"instruction": "6. We combine both flow filters using `&`.",
|
||||
"time_from": 44.2,
|
||||
"time_to": 47.3
|
||||
},
|
||||
{
|
||||
"instruction": "7. Enter `~u /Dunedin & ~q` between the quotes of the `set intercept` command and press `ENTER`.",
|
||||
"time_from": 47.8,
|
||||
"time_to": 55.2
|
||||
},
|
||||
{
|
||||
"instruction": "8. The bottom bar shows that the interception has been configured.",
|
||||
"time_from": 62.8,
|
||||
"time_to": 67.8
|
||||
},
|
||||
{
|
||||
"instruction": "9. Let’s generate a request using `curl` in a separate terminal.",
|
||||
"time_from": 68.4,
|
||||
"time_to": 73.3
|
||||
},
|
||||
{
|
||||
"instruction": "10. You see a new line in in the list of flows.",
|
||||
"time_from": 96.1,
|
||||
"time_to": 99.5
|
||||
},
|
||||
{
|
||||
"instruction": "11. The new flow is displayed in red to indicate that it has been intercepted.",
|
||||
"time_from": 100.0,
|
||||
"time_to": 105.9
|
||||
},
|
||||
{
|
||||
"instruction": "12. Put the focus (`>>`) on the intercepted flow. This is already the case in our example.",
|
||||
"time_from": 106.5,
|
||||
"time_to": 113.4
|
||||
},
|
||||
{
|
||||
"instruction": "13. Press `a` to resume this flow without making any changes.",
|
||||
"time_from": 113.9,
|
||||
"time_to": 118.5
|
||||
},
|
||||
{
|
||||
"instruction": "14. Submit another request and focus its flow.",
|
||||
"time_from": 121.1,
|
||||
"time_to": 124.5
|
||||
},
|
||||
{
|
||||
"instruction": "15. Press `X` to kill this flow, i.e., discard it without forwarding it to its final destination `wttr.in`.",
|
||||
"time_from": 128.8,
|
||||
"time_to": 137.0
|
||||
},
|
||||
{
|
||||
"instruction": "16. In the next lesson you will learn to modify intercepted flows.",
|
||||
"time_from": 141.0,
|
||||
"time_to": 146.0
|
||||
}
|
||||
]
|
338
docs/src/static/recordings/mitmproxy_modify_requests.cast
Normal file
338
docs/src/static/recordings/mitmproxy_modify_requests.cast
Normal file
@ -0,0 +1,338 @@
|
||||
{"version": 2, "width": 120, "height": 36, "timestamp": 1599237574, "env": {"SHELL": null, "TERM": "screen-256color"}}
|
||||
[0.006832, "o", "\u001b[?1049h\u001b[?1h\u001b=\u001b[H\u001b[J\u001b[34h\u001b[?25h\u001b[?1000l\u001b[?1002l\u001b[?1003l\u001b[?1006l\u001b[?1005l\u001b[m\u000f\u001b[34l\u001b[34h\u001b[?25h\u001b[?1006l\u001b[?1000l\u001b[?1002l\u001b[?1003l\u001b[?2004l\u001b[1;1H\u001b[1;36r\u001b[>c\u001b[>q\u001b[3;24H"]
|
||||
[0.007858, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[39m\u001b[3;1H[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[3;24H\r\u001b[K[tutorial@mitmproxy] $ "]
|
||||
[0.008059, "o", "\u001b[m\u000f\u001b[34l\u001b[34h\u001b[?25h\u001b[?1006l\u001b[?1000l\u001b[?1002l\u001b[?1003l\u001b[?2004l\u001b[1;1H\u001b[1;36r\u001b[3;24H"]
|
||||
[0.008783, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[39m\u001b[3;1H[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[3;24H"]
|
||||
[0.998873, "o", "\u001b[?7727h"]
|
||||
[1.280841, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[39m\u001b[3;1H[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[3;24H"]
|
||||
[1.28533, "o", "\u001b[?25l\u001b[38;5;231m\u001b[48;5;68m\u001b[H Welcome to the mitmproxy tutorial. In this lesson we cover the modification of intercepted requests. \u001b[m\u000f\u001b[3;24H"]
|
||||
[9.294649, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[39m\u001b[3;1H[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;24H\u001b[34h\u001b[?25h"]
|
||||
[10.812878, "o", "m"]
|
||||
[10.950263, "o", "i"]
|
||||
[11.078901, "o", "t"]
|
||||
[11.394682, "o", "m"]
|
||||
[11.782556, "o", "p"]
|
||||
[11.930201, "o", "r"]
|
||||
[12.225291, "o", "o"]
|
||||
[12.437755, "o", "x"]
|
||||
[12.526536, "o", "y"]
|
||||
[14.000499, "o", "\r\n"]
|
||||
[14.755131, "o", "\u001b[?25l\u001bM\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[34h\u001b[?25h\u001b[4d\u001b[?1006h\u001b[?1002h"]
|
||||
[14.755963, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[m\u000f\u001b[34h\u001b[?25h\u001b[4;1H\u001bM\u001b[38;5;254m\u001b[48;5;240mFlows \u001b[4;1H\u001b[39m\u001b[49m \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[14.756079, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[14.756489, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[14.756675, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[?25l \u001b[33;1H "]
|
||||
[14.756907, "o", " \u001b[34;1H \u001b[35;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [0/0] [*:8080]\u001b[36;1H\u001b[39m\u001b[49m \r \u001b[36;119H "]
|
||||
[15.239064, "o", "\u001b[3;1H"]
|
||||
[17.689871, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[17.6901, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[17.690397, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[17.690679, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[17.690939, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[17.694963, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H We configure and use the same interception rule as in the last tutorial. \u001b[m\u000f\u001b[3;1H"]
|
||||
[23.451203, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[23.451332, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[23.451733, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[23.452038, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[23.452325, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[23.966883, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[23.967047, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[23.96722, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[23.96752, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[23.967732, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[23.971614, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Press `i` to prepopulate mitmproxy’s command prompt, enter the flow filter `~u /Dunedin & ~q`, and press `ENTER`. \u001b[m\u000f\u001b[3;1H"]
|
||||
[33.0091, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[33.00933, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[33.009524, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[33.009773, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[33.009934, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[33.534298, "o", "\u001b[36d: \u001b[38;5;33mset\u001b[38;5;245m intercept ''\u001b[39m \r: \u001b[38;5;33mset\u001b[38;5;245m intercept ''\u001b[39m \u001b[36;119H \u001b[18G\u001b[34h\u001b[?25h"]
|
||||
[35.908269, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~'\u001b[39m \u001b[36;119H \u001b[19G\u001b[34h\u001b[?25h"]
|
||||
[36.238, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u'\u001b[39m \u001b[36;119H \u001b[20G\u001b[34h\u001b[?25h"]
|
||||
[36.522152, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u '\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u '\u001b[39m \u001b[36;119H \u001b[21G\u001b[34h\u001b[?25h"]
|
||||
[37.000067, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /'\u001b[39m \u001b[36;119H \u001b[22G\u001b[34h\u001b[?25h"]
|
||||
[37.120473, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /D'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /D'\u001b[39m \u001b[36;119H \u001b[23G\u001b[34h\u001b[?25h"]
|
||||
[37.246529, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Du'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Du'\u001b[39m \u001b[36;119H \u001b[24G\u001b[34h\u001b[?25h"]
|
||||
[37.394094, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dun'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dun'\u001b[39m \u001b[36;119H \u001b[25G\u001b[34h\u001b[?25h"]
|
||||
[37.533841, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dune'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dune'\u001b[39m \u001b[36;119H \u001b[26G\u001b[34h\u001b[?25h"]
|
||||
[37.705727, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Duned'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Duned'\u001b[39m \u001b[36;119H \u001b[27G\u001b[34h\u001b[?25h"]
|
||||
[37.849512, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedi'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedi'\u001b[39m \u001b[36;119H \u001b[28G\u001b[34h\u001b[?25h"]
|
||||
[37.96628, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin'\u001b[39m \u001b[36;119H \u001b[29G\u001b[34h\u001b[?25h"]
|
||||
[38.225943, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin '\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin '\u001b[39m \u001b[36;119H \u001b[30G\u001b[34h\u001b[?25h"]
|
||||
[38.764278, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin &'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin &'\u001b[39m \u001b[36;119H \u001b[31G\u001b[34h\u001b[?25h"]
|
||||
[38.999754, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin & '\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin & '\u001b[39m \u001b[36;119H \u001b[32G\u001b[34h\u001b[?25h"]
|
||||
[39.43948, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin & ~'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin & ~'\u001b[39m \u001b[36;119H \u001b[33G\u001b[34h\u001b[?25h"]
|
||||
[39.697639, "o", "\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin & ~q'\u001b[39m \u001b[?25l\r: \u001b[38;5;33mset\u001b[38;5;245m intercept '~u /Dunedin & ~q'\u001b[39m \u001b[36;119H \u001b[34G\u001b[34h\u001b[?25h"]
|
||||
[41.121341, "o", "\u001b[35;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [0/0] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[36;1H\u001b[39m\u001b[49m \u001b[?25l\r \u001b[36;119H "]
|
||||
[41.307368, "o", "\u001b[3;1H"]
|
||||
[42.01438, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[42.014502, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[42.014882, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[42.014973, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[42.015015, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[42.019226, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Let’s generate a request using `curl` in a separate terminal. \u001b[m\u000f\u001b[3;1H"]
|
||||
[46.907058, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[46.907176, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[46.907377, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[46.907669, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[46.907899, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[47.413908, "o", "\u001b[38;5;252m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;231m\u001b[19;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;252m--\u001b[116C--\u001b[19;1H\u001b[38;5;231m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H "]
|
||||
[47.414443, "o", " \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H "]
|
||||
[47.414739, "o", " \u001b[17;1H \u001b[18;1H \u001b[20;1H\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[20;1H\u001b[34h\u001b[?25h\u001b[?1006l\u001b[?1002l"]
|
||||
[47.419494, "o", "\u001b[3d\u001b[38;5;254m\u001b[48;5;240mFlows \u001b[4;1H\u001b[39m\u001b[49m \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H "]
|
||||
[47.419859, "o", " \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [0/0] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[18;1H\u001b[39m\u001b[49m "]
|
||||
[47.42011, "o", " \u001b[?25l\r \u001b[18;119H \u001b[20;1H\u001b[34h\u001b[?25h"]
|
||||
[47.426812, "o", "\u001b[?25l\u001b[38;5;252m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;231m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;252m--\u001b[116C--\u001b[24;1H\u001b[38;5;231m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H "]
|
||||
[47.427215, "o", " \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H "]
|
||||
[47.427493, "o", " \u001b[38;5;254m\u001b[48;5;240m\u001b[17;1H⇩ [0/0] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[18;1H \u001b[19;1H\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[2B\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[25;1H"]
|
||||
[47.431362, "o", "[tutorial@mitmproxy] $ "]
|
||||
[47.658883, "o", "\u001b[?25l\u001b[38;5;252m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;231m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;252m--\u001b[116C--\u001b[24;1H\u001b[38;5;231m--\u001b[116C--\u001b[m\u000f\u001b[34h\u001b[?25h\u001b[25;24H"]
|
||||
[47.658997, "o", "\r\u001b[K[tutorial@mitmproxy] $ "]
|
||||
[47.6626, "o", "\u001b[3;1H\u001b[38;5;254m\u001b[48;5;240mFlows \u001b[4;1H\u001b[39m\u001b[49m \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H "]
|
||||
[47.662718, "o", " \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H "]
|
||||
[47.663068, "o", " \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [0/0] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[23;1H\u001b[39m\u001b[49m \u001b[?25l\r \u001b[23;119H \u001b[25;24H\u001b[34h\u001b[?25h"]
|
||||
[49.463165, "o", "c"]
|
||||
[49.906871, "o", "u"]
|
||||
[50.123025, "o", "r"]
|
||||
[50.309853, "o", "l"]
|
||||
[50.395441, "o", " "]
|
||||
[50.884534, "o", "-"]
|
||||
[50.977737, "o", "-"]
|
||||
[51.385572, "o", "p"]
|
||||
[51.707857, "o", "r"]
|
||||
[52.188154, "o", "o"]
|
||||
[52.343779, "o", "x"]
|
||||
[52.796541, "o", "y"]
|
||||
[53.076259, "o", " "]
|
||||
[53.637758, "o", "h"]
|
||||
[53.838168, "o", "t"]
|
||||
[54.078356, "o", "t"]
|
||||
[54.329275, "o", "p"]
|
||||
[54.462269, "o", ":"]
|
||||
[54.933604, "o", "/"]
|
||||
[55.024757, "o", "/"]
|
||||
[55.194766, "o", "1"]
|
||||
[55.359076, "o", "2"]
|
||||
[55.456274, "o", "7"]
|
||||
[55.883614, "o", "."]
|
||||
[56.226637, "o", "0"]
|
||||
[56.609235, "o", "."]
|
||||
[57.016624, "o", "0"]
|
||||
[57.446043, "o", "."]
|
||||
[57.922354, "o", "1"]
|
||||
[58.192046, "o", ":"]
|
||||
[58.340502, "o", "8"]
|
||||
[58.689748, "o", "0"]
|
||||
[59.002965, "o", "8"]
|
||||
[59.218681, "o", "0"]
|
||||
[59.357679, "o", " "]
|
||||
[59.754664, "o", "\""]
|
||||
[59.973445, "o", "h"]
|
||||
[60.34615, "o", "t"]
|
||||
[60.495412, "o", "t"]
|
||||
[60.898973, "o", "p"]
|
||||
[61.135683, "o", ":"]
|
||||
[61.335852, "o", "/"]
|
||||
[61.495667, "o", "/"]
|
||||
[61.766856, "o", "w"]
|
||||
[62.016547, "o", "t"]
|
||||
[62.114879, "o", "t"]
|
||||
[62.380538, "o", "r"]
|
||||
[62.498196, "o", "."]
|
||||
[62.952936, "o", "i"]
|
||||
[63.064326, "o", "n"]
|
||||
[63.307964, "o", "/"]
|
||||
[63.461843, "o", "D"]
|
||||
[63.786573, "o", "u"]
|
||||
[63.888436, "o", "n"]
|
||||
[63.98487, "o", "e"]
|
||||
[64.199667, "o", "d"]
|
||||
[64.284781, "o", "i"]
|
||||
[64.744086, "o", "n"]
|
||||
[65.015604, "o", "?"]
|
||||
[65.147363, "o", "0"]
|
||||
[65.429844, "o", "\""]
|
||||
[66.800956, "o", "\r\n"]
|
||||
[66.966075, "o", "\u001b[4d\u001b[38;5;245m>>\u001b[38;5;160m16:40:41\u001b[39m \u001b[38;5;160mHTTP \u001b[39m \u001b[38;5;160mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[22;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[26;1H\u001b[m\u000f"]
|
||||
[69.545212, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[m\u000f\u001b[34h\u001b[?25h\u001b[3;1H\u001b[?25l\u001b[?1006h\u001b[?1002h"]
|
||||
[69.54611, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[m\u000f\u001b[3;1H"]
|
||||
[69.558846, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>\u001b[38;5;160m16:40:41\u001b[39m \u001b[38;5;160mHTTP \u001b[39m \u001b[38;5;160mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[69.559185, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[69.559488, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] "]
|
||||
[69.559531, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[69.563996, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H We now want to modify the intercepted request. \u001b[m\u000f\u001b[3;1H"]
|
||||
[73.24344, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>\u001b[38;5;160m16:40:41\u001b[39m \u001b[38;5;160mHTTP \u001b[39m \u001b[38;5;160mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[73.243689, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[73.243897, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] "]
|
||||
[73.243952, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[73.75323, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>\u001b[38;5;160m16:40:41\u001b[39m \u001b[38;5;160mHTTP \u001b[39m \u001b[38;5;160mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[73.753555, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[73.753656, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] "]
|
||||
[73.753908, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[73.759016, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Put the focus (`>>`) on the intercepted flow. This is already the case in our example. \u001b[m\u000f\u001b[3;1H"]
|
||||
[80.644184, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>\u001b[38;5;160m16:40:41\u001b[39m \u001b[38;5;160mHTTP \u001b[39m \u001b[38;5;160mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[80.644398, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[80.644603, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] "]
|
||||
[80.64487, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[81.151301, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>\u001b[38;5;160m16:40:41\u001b[39m \u001b[38;5;160mHTTP \u001b[39m \u001b[38;5;160mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[81.151645, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[81.151872, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] "]
|
||||
[81.151946, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[81.156063, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Press `ENTER` to open the details view for the intercepted flow. \u001b[m\u000f\u001b[3;1H"]
|
||||
[86.271979, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>\u001b[38;5;160m16:40:41\u001b[39m \u001b[38;5;160mHTTP \u001b[39m \u001b[38;5;160mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[86.272089, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[86.272442, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] "]
|
||||
[86.272719, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[86.793459, "o", "\u001b[38;5;254m\u001b[48;5;240mFlow Details \u001b[4;1H\u001b[49m\u001b[38;5;240m2020-09-04 16:40:41\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;160mhttp://wttr.in/Dunedin?0\u001b[39m \u001b[5;1H \u001b[6;1H\u001b[38;5;254m\u001b[48;5;240m Request intercepted \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[7;1H\u001b[49m\u001b[38;5;33mHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m \u001b[8;1H\u001b[38;5;33mUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m \u001b[9;1H\u001b[38;5;33mAccept:\u001b[39m \u001b[38;5;"]
|
||||
[86.793725, "o", "245m*/*\u001b[39m \u001b[10;1H\u001b[38;5;33mProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[11;1H\u001b[38;5;254m\u001b[48;5;240mQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[12;1H\u001b[49m\u001b[38;5;33m0: \u001b[39m \u001b[12;120H"]
|
||||
[87.019529, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:40:41\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;160mhttp://wttr.in/Dunedin?0\u001b[39m \u001b[5;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request intercepted \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m "]
|
||||
[87.019816, "o", " \u001b[38;5;245mwttr.in\u001b[39m \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m \u001b[13;1H "]
|
||||
[87.020043, "o", " \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H "]
|
||||
[87.020222, "o", " \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[12;120H"]
|
||||
[87.02261, "o", "\u001b[3;1H"]
|
||||
[87.024832, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Press `e` to edit the intercepted flow. \u001b[m\u000f\u001b[3;1H"]
|
||||
[90.13898, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:40:41\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;160mhttp://wttr.in/Dunedin?0\u001b[39m \u001b[5;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request intercepted \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m "]
|
||||
[90.139088, "o", " \u001b[38;5;245mwttr.in\u001b[39m \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m \u001b[13;1H "]
|
||||
[90.139435, "o", " \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H "]
|
||||
[90.139764, "o", " \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[90.671888, "o", "\u001b[2B ┌──────── Part ───────┐ \u001b[6;1H\u001b[38;5;254m\u001b[48;5;240m Request intercepted \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m \u001b[39m\u001b[49m│\u001b[38;5;33m\u001b[48;5;241m1\u001b[38;5;234m) cookies \u001b[39m\u001b[49m│\u001b[38;5;245m\u001b[48;5;235m \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[7;1H\u001b[49m\u001b[38;5;33mHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m │\u001b[38;5;33m2\u001b[38;5;245m) urlencoded form \u001b[39m│ \u001b[8;1H\u001b[38;5;33mUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m │\u001b[38;5;33m3\u001b[38;5;245m) multipart form \u001b[39m│ \u001b[9;1H\u001b[38;5;33mAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m │\u001b[38;5;33m4\u001b[38;5;245m) path \u001b[39m│ \u001b[10;1H\u001b[3"]
|
||||
[90.67215, "o", "8;5;33mProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m │\u001b[38;5;33m5\u001b[38;5;245m) method \u001b[39m│ \u001b[11;1H\u001b[38;5;254m\u001b[48;5;240mQuery \u001b[39m\u001b[49m│\u001b[38;5;33m6\u001b[38;5;245m) query \u001b[39m│\u001b[38;5;254m\u001b[48;5;240m [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[12;1H\u001b[49m\u001b[38;5;33m0: \u001b[39m │\u001b[38;5;33m7\u001b[38;5;245m) reason \u001b[39m│ \u001b[13;1H │\u001b[38;5;33m8\u001b[38;5;245m) request-headers \u001b[39m│ \u001b[14;1H │\u001b[38;5;33m9\u001b[38;5;245m) response-headers \u001b[39m│ \u001b[15;1H │\u001b[38;5;33ma\u001b[38;5;245m) request-body \u001b[39"]
|
||||
[90.672317, "o", "m│ \u001b[16;1H │\u001b[38;5;33mb\u001b[38;5;245m) response-body \u001b[39m│ \u001b[17;1H │\u001b[38;5;33mc\u001b[38;5;245m) status_code \u001b[39m│ \u001b[18;1H │\u001b[38;5;33md\u001b[38;5;245m) set-cookies \u001b[39m│ \u001b[19;1H │\u001b[38;5;33me\u001b[38;5;245m) url \u001b[39m│ \u001b[20;1H └─────────────────────┘ \u001b[20;120H"]
|
||||
[90.837714, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:40:41\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;160mhttp://wttr.in/Dunedin?0\u001b[39m \u001b[5;1H ┌──────── Part ───────┐ \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request intercepted \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m \u001b[39m\u001b[49m│\u001b[38;5;33m\u001b[48;5;241m1\u001b[38;5;234m) cookies \u001b[39m\u001b[49m│\u001b[38;5;245m\u001b[48;5;235m "]
|
||||
[90.837822, "o", " \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m │\u001b[38;5;33m2\u001b[38;5;245m) urlencoded form \u001b[39m│ \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m │\u001b[38;5;33m3\u001b[38;5;245m) multipart form \u001b[39m│ \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m │\u001b[38;5;33m4\u001b[38;5;245m) path \u001b[39m│ \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m │\u001b[38;5;33m5\u001b[38;5;245m) method \u001b[39m│ \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery \u001b[39m\u001b[49m│\u001b[38;5;33m6\u001b[38;5;245m) query \u001b[39m│\u001b[38;5;254m\u001b[48;5;240m "]
|
||||
[90.838126, "o", " [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m │\u001b[38;5;33m7\u001b[38;5;245m) reason \u001b[39m│ \u001b[13;1H │\u001b[38;5;33m8\u001b[38;5;245m) request-headers \u001b[39m│ \u001b[14;1H │\u001b[38;5;33m9\u001b[38;5;245m) response-headers \u001b[39m│ \u001b[15;1H │\u001b[38;5;33ma\u001b[38;5;245m) request-body \u001b[39m│ \u001b[16;1H │\u001b[38;5;33mb\u001b[38;5;245m) response-body \u001b[39m│ \u001b[17;1H │\u001b[38;5;33mc\u001b[38;5;245m) status_code \u001b[39m│ \u001b[18;1H "]
|
||||
[90.839484, "o", " │\u001b[38;5;33md\u001b[38;5;245m) set-cookies \u001b[39m│ \u001b[19;1H │\u001b[38;5;33me\u001b[38;5;245m) url \u001b[39m│ \u001b[20;1H └─────────────────────┘ \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0"]
|
||||
[90.839772, "o", "\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[20;120H"]
|
||||
[90.843529, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H mitmproxy asks which part to modify. \u001b[m\u000f\u001b[20;120H"]
|
||||
[91.034701, "o", "\u001b[3;1H"]
|
||||
[93.721115, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:40:41\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;160mhttp://wttr.in/Dunedin?0\u001b[39m \u001b[5;1H ┌──────── Part ───────┐ \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request intercepted \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m \u001b[39m\u001b[49m│\u001b[38;5;33m\u001b[48;5;241m1\u001b[38;5;234m) cookies \u001b[39m\u001b[49m│\u001b[38;5;245m\u001b[48;5;235m "]
|
||||
[93.721218, "o", " \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m │\u001b[38;5;33m2\u001b[38;5;245m) urlencoded form \u001b[39m│ \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m │\u001b[38;5;33m3\u001b[38;5;245m) multipart form \u001b[39m│ \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m │\u001b[38;5;33m4\u001b[38;5;245m) path \u001b[39m│ \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m │\u001b[38;5;33m5\u001b[38;5;245m) method \u001b[39m│ \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery \u001b[39m\u001b[49m│\u001b[38;5;33m6\u001b[38;5;245m) query \u001b[39m│\u001b[38;5;254m\u001b[48;5;240m "]
|
||||
[93.721494, "o", " [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m │\u001b[38;5;33m7\u001b[38;5;245m) reason \u001b[39m│ \u001b[13;1H │\u001b[38;5;33m8\u001b[38;5;245m) request-headers \u001b[39m│ \u001b[14;1H │\u001b[38;5;33m9\u001b[38;5;245m) response-headers \u001b[39m│ \u001b[15;1H │\u001b[38;5;33ma\u001b[38;5;245m) request-body \u001b[39m│ \u001b[16;1H │\u001b[38;5;33mb\u001b[38;5;245m) response-body \u001b[39m│ \u001b[17;1H │\u001b[38;5;33mc\u001b[38;5;245m) status_code \u001b[39m│ \u001b[18;1H "]
|
||||
[93.721677, "o", " │\u001b[38;5;33md\u001b[38;5;245m) set-cookies \u001b[39m│ \u001b[19;1H │\u001b[38;5;33me\u001b[38;5;245m) url \u001b[39m│ \u001b[20;1H └─────────────────────┘ \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0"]
|
||||
[93.721857, "o", "\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[94.232287, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:40:41\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;160mhttp://wttr.in/Dunedin?0\u001b[39m \u001b[5;1H ┌──────── Part ───────┐ \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request intercepted \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m \u001b[39m\u001b[49m│\u001b[38;5;33m\u001b[48;5;241m1\u001b[38;5;234m) cookies \u001b[39m\u001b[49m│\u001b[38;5;245m\u001b[48;5;235m "]
|
||||
[94.232634, "o", " \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m │\u001b[38;5;33m2\u001b[38;5;245m) urlencoded form \u001b[39m│ \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m │\u001b[38;5;33m3\u001b[38;5;245m) multipart form \u001b[39m│ \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m │\u001b[38;5;33m4\u001b[38;5;245m) path \u001b[39m│ \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m │\u001b[38;5;33m5\u001b[38;5;245m) method \u001b[39m│ \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery \u001b[39m\u001b[49m│\u001b[38;5;33m6\u001b[38;5;245m) query \u001b[39m│\u001b[38;5;254m\u001b[48;5;240m "]
|
||||
[94.233206, "o", " [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m │\u001b[38;5;33m7\u001b[38;5;245m) reason \u001b[39m│ \u001b[13;1H │\u001b[38;5;33m8\u001b[38;5;245m) request-headers \u001b[39m│ \u001b[14;1H │\u001b[38;5;33m9\u001b[38;5;245m) response-headers \u001b[39m│ \u001b[15;1H │\u001b[38;5;33ma\u001b[38;5;245m) request-body \u001b[39m│ \u001b[16;1H │\u001b[38;5;33mb\u001b[38;5;245m) response-body \u001b[39m│ \u001b[17;1H │\u001b[38;5;33mc\u001b[38;5;245m) status_code \u001b[39m│ \u001b[18;1H "]
|
||||
[94.233343, "o", " │\u001b[38;5;33md\u001b[38;5;245m) set-cookies \u001b[39m│ \u001b[19;1H │\u001b[38;5;33me\u001b[38;5;245m) url \u001b[39m│ \u001b[20;1H └─────────────────────┘ \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0"]
|
||||
[94.233421, "o", "\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[94.238053, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Select `path` by using your arrow keys and press `ENTER`. \u001b[m\u000f\u001b[3;1H"]
|
||||
[98.80079, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:40:41\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;160mhttp://wttr.in/Dunedin?0\u001b[39m \u001b[5;1H ┌──────── Part ───────┐ \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request intercepted \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m \u001b[39m\u001b[49m│\u001b[38;5;33m\u001b[48;5;241m1\u001b[38;5;234m) cookies \u001b[39m\u001b[49m│\u001b[38;5;245m\u001b[48;5;235m "]
|
||||
[98.80091, "o", " \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m │\u001b[38;5;33m2\u001b[38;5;245m) urlencoded form \u001b[39m│ \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m │\u001b[38;5;33m3\u001b[38;5;245m) multipart form \u001b[39m│ \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m │\u001b[38;5;33m4\u001b[38;5;245m) path \u001b[39m│ \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m │\u001b[38;5;33m5\u001b[38;5;245m) method \u001b[39m│ \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery \u001b[39m\u001b[49m│\u001b[38;5;33m6\u001b[38;5;245m) query \u001b[39m│\u001b[38;5;254m\u001b[48;5;240m "]
|
||||
[98.801366, "o", " [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m │\u001b[38;5;33m7\u001b[38;5;245m) reason \u001b[39m│ \u001b[13;1H │\u001b[38;5;33m8\u001b[38;5;245m) request-headers \u001b[39m│ \u001b[14;1H │\u001b[38;5;33m9\u001b[38;5;245m) response-headers \u001b[39m│ \u001b[15;1H │\u001b[38;5;33ma\u001b[38;5;245m) request-body \u001b[39m│ \u001b[16;1H │\u001b[38;5;33mb\u001b[38;5;245m) response-body \u001b[39m│ \u001b[17;1H │\u001b[38;5;33mc\u001b[38;5;245m) status_code \u001b[39m│ \u001b[18;1H "]
|
||||
[98.801554, "o", " │\u001b[38;5;33md\u001b[38;5;245m) set-cookies \u001b[39m│ \u001b[19;1H │\u001b[38;5;33me\u001b[38;5;245m) url \u001b[39m│ \u001b[20;1H └─────────────────────┘ \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0"]
|
||||
[98.801757, "o", "\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[99.317254, "o", "\u001b[3B\u001b[38;5;254m\u001b[48;5;240m Request intercepted \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m \u001b[39m\u001b[49m│\u001b[38;5;33m1\u001b[38;5;245m) cookies \u001b[39m│\u001b[38;5;245m\u001b[48;5;235m \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[7;1H\u001b[49m\u001b[38;5;33mHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m │\u001b[38;5;33m\u001b[48;5;241m2\u001b[38;5;234m) urlencoded form \u001b[39m\u001b[49m│ \u001b[7;120H"]
|
||||
[99.557371, "o", "\u001b[3;1H"]
|
||||
[100.430077, "o", "\u001b[4B\u001b[38;5;33mHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m │\u001b[38;5;33m2\u001b[38;5;245m) urlencoded form \u001b[39m│ \u001b[8;1H\u001b[38;5;33mUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m │\u001b[38;5;33m\u001b[48;5;241m3\u001b[38;5;234m) multipart form \u001b[39m\u001b[49m│ \u001b[8;120H"]
|
||||
[100.557974, "o", "\u001b[3;1H"]
|
||||
[100.671921, "o", "\u001b[5B\u001b[38;5;33mUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m │\u001b[38;5;33m3\u001b[38;5;245m) multipart form \u001b[39m│ \u001b[9;1H\u001b[38;5;33mAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m │\u001b[38;5;33m\u001b[48;5;241m4\u001b[38;5;234m) path \u001b[39m\u001b[49m│ \u001b[9;120H"]
|
||||
[101.060968, "o", "\u001b[3;1H"]
|
||||
[102.354524, "o", "\u001b[38;5;254m\u001b[48;5;240mEdit Path Components \u001b[4;1HComponent \u001b[5;1H\u001b[38;5;244m\u001b[48;5;235mDunedin \u001b[6;1H\u001b[39m\u001b[49m \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H "]
|
||||
[102.35463, "o", " \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H "]
|
||||
[102.354905, "o", " \u001b[19;1H \u001b[20;1H \u001b[20;120H"]
|
||||
[102.563475, "o", "\u001b[3;1H"]
|
||||
[102.606248, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HEdit Path Components \u001b[4;1HComponent \u001b[38;5;244m\u001b[48;5;235m\u001b[5;1HDunedin \u001b[39m\u001b[49m\u001b[6;1H \u001b[7;1H \u001b[8;1H "]
|
||||
[102.606362, "o", " \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H "]
|
||||
[102.606411, "o", " \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H "]
|
||||
[102.606917, "o", " \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[102.610814, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H mitmproxy shows all path components line by line, in our example its just `Dunedin`. \u001b[m\u000f\u001b[3;1H"]
|
||||
[109.330396, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HEdit Path Components \u001b[4;1HComponent \u001b[38;5;244m\u001b[48;5;235m\u001b[5;1HDunedin \u001b[39m\u001b[49m\u001b[6;1H \u001b[7;1H \u001b[8;1H "]
|
||||
[109.33063, "o", " \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H "]
|
||||
[109.330882, "o", " \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H "]
|
||||
[109.331047, "o", " \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[109.841025, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HEdit Path Components \u001b[4;1HComponent \u001b[38;5;244m\u001b[48;5;235m\u001b[5;1HDunedin \u001b[39m\u001b[49m\u001b[6;1H \u001b[7;1H \u001b[8;1H "]
|
||||
[109.841248, "o", " \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H "]
|
||||
[109.841444, "o", " \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H "]
|
||||
[109.841695, "o", " \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[109.845835, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Press `ENTER` to modify the selected path component. \u001b[m\u000f\u001b[3;1H"]
|
||||
[114.004889, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HEdit Path Components \u001b[4;1HComponent \u001b[38;5;244m\u001b[48;5;235m\u001b[5;1HDunedin \u001b[39m\u001b[49m\u001b[6;1H \u001b[7;1H \u001b[8;1H "]
|
||||
[114.005255, "o", " \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H "]
|
||||
[114.005577, "o", " \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H "]
|
||||
[114.005778, "o", " \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[115.651932, "o", "\u001b[2B\u001b[38;5;245mDunedin \u001b[5;8H\u001b[34h\u001b[?25h\u001b[m\u000f"]
|
||||
[115.754535, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HEdit Path Components \u001b[4;1HComponent \u001b[49m\u001b[38;5;245m\u001b[5;1HDunedin \u001b[39m\u001b[6;1H \u001b[7;1H \u001b[8;1H "]
|
||||
[115.754847, "o", " \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H "]
|
||||
[115.755086, "o", " \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H "]
|
||||
[115.755141, "o", " \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[5;8H"]
|
||||
[115.759615, "o", "\u001b[?25l\u001b[38;5;231m\u001b[48;5;68m\u001b[H Replace `Dunedin` with `Innsbruck`. \u001b[m\u000f\u001b[5;8H"]
|
||||
[118.559304, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HEdit Path Components \u001b[4;1HComponent \u001b[49m\u001b[38;5;245m\u001b[5;1HDunedin \u001b[39m\u001b[6;1H \u001b[7;1H \u001b[8;1H "]
|
||||
[118.559579, "o", " \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H "]
|
||||
[118.559799, "o", " \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H "]
|
||||
[118.560166, "o", " \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[5;8H\u001b[34h\u001b[?25h"]
|
||||
[119.073423, "o", "\r\u001b[38;5;245mDunedi \u001b[5;7H\u001b[m\u000f"]
|
||||
[119.380005, "o", "\r\u001b[38;5;245mDuned \u001b[5;6H\u001b[m\u000f"]
|
||||
[119.851695, "o", "\r\u001b[38;5;245mDune \u001b[5;5H\u001b[m\u000f"]
|
||||
[120.257177, "o", "\r\u001b[38;5;245mDun \u001b[5;4H\u001b[m\u000f"]
|
||||
[120.783188, "o", "\r\u001b[38;5;245mDu \u001b[5;3H\u001b[m\u000f"]
|
||||
[121.241599, "o", "\r\u001b[38;5;245mD \u001b[5;2H\u001b[m\u000f"]
|
||||
[121.544933, "o", "\r\u001b[38;5;245m \u001b[5;1H\u001b[m\u000f"]
|
||||
[122.738974, "o", "\u001b[38;5;245mI \u001b[5;2H\u001b[m\u000f"]
|
||||
[123.165131, "o", "\r\u001b[38;5;245mIn \u001b[5;3H\u001b[m\u000f"]
|
||||
[123.495912, "o", "\r\u001b[38;5;245mInn \u001b[5;4H\u001b[m\u000f"]
|
||||
[123.804758, "o", "\r\u001b[38;5;245mInns \u001b[5;5H\u001b[m\u000f"]
|
||||
[124.074149, "o", "\r\u001b[38;5;245mInnsb \u001b[5;6H\u001b[m\u000f"]
|
||||
[124.304109, "o", "\r\u001b[38;5;245mInnsbr \u001b[5;7H\u001b[m\u000f"]
|
||||
[124.540763, "o", "\r\u001b[38;5;245mInnsbru \u001b[5;8H\u001b[m\u000f"]
|
||||
[125.182976, "o", "\r\u001b[38;5;245mInnsbruc \u001b[5;9H\u001b[m\u000f"]
|
||||
[125.716074, "o", "\r\u001b[38;5;245mInnsbruck \u001b[5;10H\u001b[m\u000f"]
|
||||
[126.118216, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HEdit Path Components \u001b[4;1HComponent \u001b[49m\u001b[38;5;245m\u001b[5;1HInnsbruck \u001b[39m\u001b[6;1H \u001b[7;1H \u001b[8;1H "]
|
||||
[126.118605, "o", " \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H "]
|
||||
[126.118685, "o", " \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H "]
|
||||
[126.118721, "o", " \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[5;10H"]
|
||||
[126.123568, "o", "\u001b[?25l\u001b[38;5;231m\u001b[48;5;68m\u001b[H Press `ESC` to confirm your change. \u001b[m\u000f\u001b[5;10H"]
|
||||
[128.922338, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HEdit Path Components \u001b[4;1HComponent \u001b[49m\u001b[38;5;245m\u001b[5;1HInnsbruck \u001b[39m\u001b[6;1H \u001b[7;1H \u001b[8;1H "]
|
||||
[128.92259, "o", " \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H "]
|
||||
[128.922856, "o", " \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H "]
|
||||
[128.922952, "o", " \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[5;10H\u001b[34h\u001b[?25h"]
|
||||
[129.55932, "o", "\r\u001b[38;5;244m\u001b[48;5;235mInnsbruck \u001b[5;120H\u001b[?25l\u001b[m\u000f"]
|
||||
[129.646873, "o", "\u001b[3;1H"]
|
||||
[129.775768, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HEdit Path Components \u001b[4;1HComponent \u001b[38;5;244m\u001b[48;5;235m\u001b[5;1HInnsbruck \u001b[39m\u001b[49m\u001b[6;1H \u001b[7;1H \u001b[8;1H "]
|
||||
[129.776041, "o", " \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H "]
|
||||
[129.776372, "o", " \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H "]
|
||||
[129.776655, "o", " \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[129.781276, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Press `q` to go back to the flow details view. \u001b[m\u000f\u001b[3;1H"]
|
||||
[133.464083, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HEdit Path Components \u001b[4;1HComponent \u001b[38;5;244m\u001b[48;5;235m\u001b[5;1HInnsbruck \u001b[39m\u001b[49m\u001b[6;1H \u001b[7;1H \u001b[8;1H "]
|
||||
[133.464435, "o", " \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H "]
|
||||
[133.464592, "o", " \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H "]
|
||||
[133.464685, "o", " \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[133.990725, "o", "\u001b[38;5;254m\u001b[48;5;240mFlow Details \u001b[4;1H\u001b[49m\u001b[38;5;240m2020-09-04 16:40:41\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;160mhttp://wttr.in/Innsbruck?0\u001b[39m \u001b[5;1H \u001b[6;1H\u001b[38;5;254m\u001b[48;5;240m Request intercepted \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[7;1H\u001b[49m\u001b[38;5;33mHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m \u001b[8;1H\u001b[38;5;33mUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m \u001b[9;1H\u001b[38;5;33mAccept:\u001b[39m \u001b[38;5;"]
|
||||
[133.990834, "o", "245m*/*\u001b[39m \u001b[10;1H\u001b[38;5;33mProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[11;1H\u001b[38;5;254m\u001b[48;5;240mQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[12;1H\u001b[49m\u001b[38;5;33m0: \u001b[39m \u001b[12;120H"]
|
||||
[134.161011, "o", "\u001b[3;1H"]
|
||||
[134.292786, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:40:41\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;160mhttp://wttr.in/Innsbruck?0\u001b[39m \u001b[5;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request intercepted \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m "]
|
||||
[134.293216, "o", " \u001b[38;5;245mwttr.in\u001b[39m \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m \u001b[13;1H "]
|
||||
[134.293466, "o", " \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H "]
|
||||
[134.293663, "o", " \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[134.298981, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Press `a` to resume the intercepted flow. \u001b[m\u000f\u001b[3;1H"]
|
||||
[137.585252, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:40:41\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;160mhttp://wttr.in/Innsbruck?0\u001b[39m \u001b[5;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request intercepted \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m "]
|
||||
[137.58536, "o", " \u001b[38;5;245mwttr.in\u001b[39m \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m \u001b[13;1H "]
|
||||
[137.585711, "o", " \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H "]
|
||||
[137.585933, "o", " \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[138.107458, "o", "\r\n\u001b[38;5;240m2020-09-04 16:40:41\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;33mhttp://wttr.in/Innsbruck?0\u001b[39m \u001b[6;1H\u001b[38;5;254m\u001b[48;5;240m Request \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[6;120H\u001b[m\u000f"]
|
||||
[138.168932, "o", "\u001b[3;1H"]
|
||||
[138.217617, "o", "\r\n\u001b[38;5;240m2020-09-04 16:40:41\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;245mhttp://wttr.in/Innsbruck?0\u001b[39m \u001b[5;1H \u001b[38;5;64m←\u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;64mOK\u001b[39m \u001b[38;5;245mtext/plain\u001b[39m \u001b[38;5;245m[content missing]\u001b[39m \u001b[5;120H"]
|
||||
[138.227378, "o", "\r \u001b[38;5;64m←\u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;64mOK\u001b[39m \u001b[38;5;245mtext/plain\u001b[39m \u001b[38;5;47m330b\u001b[39m \u001b[38;5;196m71.4s\u001b[39m \u001b[5;120H"]
|
||||
[138.227829, "o", "\u001b[26;1HWeather report: Innsbruck\u001b[28;1H \u001b[38;5;226m \\ / \u001b[39m Sunny\r\n \u001b[38;5;226m .-. \u001b[39m \u001b[38;5;220m25\u001b[39m..\u001b[38;5;220m27\u001b[39m °C \r\n \u001b[38;5;226m ― ( ) ― \u001b[39m \u001b[1m↙\u001b[m\u000f \u001b[38;5;154m9\u001b[39m km/h \u001b[5;120H\u001b[31;1H \u001b[38;5;226m `-’ \u001b[39m 10 km \r\n \u001b[38;5;226m / \\ \u001b[39m 0.0 mm \u001b[5;120H"]
|
||||
[138.229427, "o", "\u001b[33;1H[tutorial@mitmproxy] $ \u001b[5;120H"]
|
||||
[138.671071, "o", "\u001b[3;1H"]
|
||||
[140.360818, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:40:41\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;245mhttp://wttr.in/Innsbruck?0\u001b[39m \u001b[5;1H \u001b[38;5;64m←\u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;64mOK\u001b[39m \u001b[38;5;245mtext/plain\u001b[39m \u001b[38;5;47m330b\u001b[39m \u001b[38;5;196m71.4s\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5"]
|
||||
[140.361068, "o", ";245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m "]
|
||||
[140.361378, "o", " \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H"]
|
||||
[140.361613, "o", " \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Innsbruck\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m \\ / \u001b[39m Sunny\u001b[K\r\n \u001b[38;5;226m .-. \u001b[39m \u001b[38;5;220m25\u001b[39m..\u001b[38;5;220m27\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m ― ( ) ― \u001b[39m \u001b[1m↙\u001b[m\u000f \u001b[38;5;154m9\u001b[39m km/h \u001b[K\r\n \u001b[38;5;226m `-’ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;226m / \\ \u001b[39m 0.0 mm \u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H "]
|
||||
[140.361831, "o", " \u001b[m\u000f\u001b[3;1H"]
|
||||
[140.366223, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H You see that the request URL was modified and `wttr.in` replied with the weather report for `Innsbruck`. \u001b[m\u000f\u001b[3;1H"]
|
||||
[148.681656, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:40:41\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;245mhttp://wttr.in/Innsbruck?0\u001b[39m \u001b[5;1H \u001b[38;5;64m←\u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;64mOK\u001b[39m \u001b[38;5;245mtext/plain\u001b[39m \u001b[38;5;47m330b\u001b[39m \u001b[38;5;196m71.4s\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5"]
|
||||
[148.681984, "o", ";245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m "]
|
||||
[148.682247, "o", " \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H"]
|
||||
[148.68268, "o", " \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Innsbruck\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m \\ / \u001b[39m Sunny\u001b[K\r\n \u001b[38;5;226m .-. \u001b[39m \u001b[38;5;220m25\u001b[39m..\u001b[38;5;220m27\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m ― ( ) ― \u001b[39m \u001b[1m↙\u001b[m\u000f \u001b[38;5;154m9\u001b[39m km/h \u001b[K\r\n \u001b[38;5;226m `-’ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;226m / \\ \u001b[39m 0.0 mm \u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H "]
|
||||
[148.682829, "o", " \u001b[m\u000f\u001b[3;1H"]
|
||||
[149.201025, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:40:41\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;245mhttp://wttr.in/Innsbruck?0\u001b[39m \u001b[5;1H \u001b[38;5;64m←\u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;64mOK\u001b[39m \u001b[38;5;245mtext/plain\u001b[39m \u001b[38;5;47m330b\u001b[39m \u001b[38;5;196m71.4s\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5"]
|
||||
[149.20143, "o", ";245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m "]
|
||||
[149.201636, "o", " \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H"]
|
||||
[149.201691, "o", " \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Innsbruck\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m \\ / \u001b[39m Sunny\u001b[K\r\n \u001b[38;5;226m .-. \u001b[39m \u001b[38;5;220m25\u001b[39m..\u001b[38;5;220m27\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m ― ( ) ― \u001b[39m \u001b[1m↙\u001b[m\u000f \u001b[38;5;154m9\u001b[39m km/h \u001b[K\r\n \u001b[38;5;226m `-’ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;226m / \\ \u001b[39m 0.0 mm \u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H "]
|
||||
[149.201875, "o", " \u001b[m\u000f\u001b[3;1H"]
|
||||
[149.206429, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H In the next lesson you will learn to replay flows. \u001b[m\u000f\u001b[3;1H"]
|
||||
[153.20249, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:40:41\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;245mhttp://wttr.in/Innsbruck?0\u001b[39m \u001b[5;1H \u001b[38;5;64m←\u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;64mOK\u001b[39m \u001b[38;5;245mtext/plain\u001b[39m \u001b[38;5;47m330b\u001b[39m \u001b[38;5;196m71.4s\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5"]
|
||||
[153.202804, "o", ";245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m "]
|
||||
[153.203011, "o", " \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H"]
|
||||
[153.203065, "o", " \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mi\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:~u /Dunedin & ~q] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Innsbruck\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m \\ / \u001b[39m Sunny\u001b[K\r\n \u001b[38;5;226m .-. \u001b[39m \u001b[38;5;220m25\u001b[39m..\u001b[38;5;220m27\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m ― ( ) ― \u001b[39m \u001b[1m↙\u001b[m\u000f \u001b[38;5;154m9\u001b[39m km/h \u001b[K\r\n \u001b[38;5;226m `-’ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;226m / \\ \u001b[39m 0.0 mm \u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H "]
|
||||
[153.203288, "o", " \u001b[m\u000f\u001b[3;1H"]
|
@ -0,0 +1,92 @@
|
||||
[
|
||||
{
|
||||
"instruction": "1. Welcome to the mitmproxy tutorial. In this lesson we cover the modification of intercepted requests.",
|
||||
"time_from": 0.0,
|
||||
"time_to": 8.0
|
||||
},
|
||||
{
|
||||
"instruction": "2. We configure and use the same interception rule as in the last tutorial.",
|
||||
"time_from": 16.4,
|
||||
"time_to": 22.2
|
||||
},
|
||||
{
|
||||
"instruction": "3. Press `i` to prepopulate mitmproxy’s command prompt, enter the flow filter `~u /Dunedin & ~q`, and press `ENTER`.",
|
||||
"time_from": 22.7,
|
||||
"time_to": 31.7
|
||||
},
|
||||
{
|
||||
"instruction": "4. Let’s generate a request using `curl` in a separate terminal.",
|
||||
"time_from": 40.7,
|
||||
"time_to": 45.6
|
||||
},
|
||||
{
|
||||
"instruction": "5. We now want to modify the intercepted request.",
|
||||
"time_from": 68.3,
|
||||
"time_to": 72.0
|
||||
},
|
||||
{
|
||||
"instruction": "6. Put the focus (`>>`) on the intercepted flow. This is already the case in our example.",
|
||||
"time_from": 72.5,
|
||||
"time_to": 79.4
|
||||
},
|
||||
{
|
||||
"instruction": "7. Press `ENTER` to open the details view for the intercepted flow.",
|
||||
"time_from": 79.9,
|
||||
"time_to": 85.0
|
||||
},
|
||||
{
|
||||
"instruction": "8. Press `e` to edit the intercepted flow.",
|
||||
"time_from": 85.7,
|
||||
"time_to": 88.8
|
||||
},
|
||||
{
|
||||
"instruction": "9. mitmproxy asks which part to modify.",
|
||||
"time_from": 89.6,
|
||||
"time_to": 92.5
|
||||
},
|
||||
{
|
||||
"instruction": "10. Select `path` by using your arrow keys and press `ENTER`.",
|
||||
"time_from": 93.0,
|
||||
"time_to": 97.6
|
||||
},
|
||||
{
|
||||
"instruction": "11. mitmproxy shows all path components line by line, in our example its just `Dunedin`.",
|
||||
"time_from": 101.3,
|
||||
"time_to": 108.0
|
||||
},
|
||||
{
|
||||
"instruction": "12. Press `ENTER` to modify the selected path component.",
|
||||
"time_from": 108.6,
|
||||
"time_to": 112.8
|
||||
},
|
||||
{
|
||||
"instruction": "13. Replace `Dunedin` with `Innsbruck`.",
|
||||
"time_from": 114.5,
|
||||
"time_to": 117.3
|
||||
},
|
||||
{
|
||||
"instruction": "14. Press `ESC` to confirm your change.",
|
||||
"time_from": 124.8,
|
||||
"time_to": 127.6
|
||||
},
|
||||
{
|
||||
"instruction": "15. Press `q` to go back to the flow details view.",
|
||||
"time_from": 128.5,
|
||||
"time_to": 132.2
|
||||
},
|
||||
{
|
||||
"instruction": "16. Press `a` to resume the intercepted flow.",
|
||||
"time_from": 133.0,
|
||||
"time_to": 136.3
|
||||
},
|
||||
{
|
||||
"instruction": "17. You see that the request URL was modified and `wttr.in` replied with the weather report for `Innsbruck`.",
|
||||
"time_from": 139.1,
|
||||
"time_to": 147.4
|
||||
},
|
||||
{
|
||||
"instruction": "18. In the next lesson you will learn to replay flows.",
|
||||
"time_from": 147.9,
|
||||
"time_to": 151.9
|
||||
}
|
||||
]
|
217
docs/src/static/recordings/mitmproxy_replay_requests.cast
Normal file
217
docs/src/static/recordings/mitmproxy_replay_requests.cast
Normal file
@ -0,0 +1,217 @@
|
||||
{"version": 2, "width": 120, "height": 36, "timestamp": 1599237926, "env": {"SHELL": null, "TERM": "screen-256color"}}
|
||||
[0.008007, "o", "\u001b[?1049h\u001b[?1h\u001b=\u001b[H\u001b[J\u001b[34h\u001b[?25h\u001b[?1000l\u001b[?1002l\u001b[?1003l\u001b[?1006l\u001b[?1005l\u001b[m\u000f\u001b[34l\u001b[34h\u001b[?25h\u001b[?1006l\u001b[?1000l\u001b[?1002l\u001b[?1003l\u001b[?2004l\u001b[1;1H\u001b[1;36r\u001b[>c\u001b[>q\u001b[3;24H"]
|
||||
[0.009231, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[39m\u001b[3;1H[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[3;24H"]
|
||||
[0.01017, "o", "\u001b[m\u000f\u001b[34l\u001b[34h\u001b[?25h\u001b[?1006l\u001b[?1000l\u001b[?1002l\u001b[?1003l\u001b[?2004l\u001b[1;1H\u001b[1;36r\u001b[3;24H"]
|
||||
[0.010685, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[39m\u001b[3;1H[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[3;24H"]
|
||||
[1.002081, "o", "\u001b[?7727h"]
|
||||
[1.272882, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[39m\u001b[3;1H[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[3;24H"]
|
||||
[1.276954, "o", "\u001b[?25l\u001b[38;5;231m\u001b[48;5;68m\u001b[H Welcome to the mitmproxy tutorial. In this lesson we cover replaying requests. \u001b[m\u000f\u001b[3;24H"]
|
||||
[7.520629, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[39m\u001b[3;1H[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;24H\u001b[34h\u001b[?25h"]
|
||||
[9.047233, "o", "m"]
|
||||
[9.417117, "o", "i"]
|
||||
[9.597926, "o", "t"]
|
||||
[9.836501, "o", "m"]
|
||||
[9.972905, "o", "p"]
|
||||
[10.427922, "o", "r"]
|
||||
[10.551624, "o", "o"]
|
||||
[11.111824, "o", "x"]
|
||||
[11.38063, "o", "y"]
|
||||
[12.780885, "o", "\r\n"]
|
||||
[13.637848, "o", "\u001b[?25l\u001bM\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[34h\u001b[?25h\u001b[4d\u001b[?1006h\u001b[?1002h"]
|
||||
[13.638519, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[m\u000f\u001b[34h\u001b[?25h\u001b[4;1H"]
|
||||
[13.638647, "o", "\u001bM\u001b[38;5;254m\u001b[48;5;240mFlows \u001b[4;1H\u001b[39m\u001b[49m \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H "]
|
||||
[13.638729, "o", " \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H "]
|
||||
[13.638793, "o", " \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[2"]
|
||||
[13.638863, "o", "7;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[?25l \u001b[33;1H \u001b[34;1H \u001b[35;"]
|
||||
[13.638931, "o", "1H\u001b[38;5;254m\u001b[48;5;240m⇩ [0/0] [*:8080]\u001b[36;1H\u001b[39m\u001b[49m \r \u001b[36;119H "]
|
||||
[14.123504, "o", "\u001b[3;1H"]
|
||||
[16.630845, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[16.631074, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[16.631251, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[16.631413, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[16.631648, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[16.635338, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Let’s generate a request that we can replay. We use `curl` in a separate terminal. \u001b[m\u000f\u001b[3;1H"]
|
||||
[23.191482, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[23.191581, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[23.191987, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[23.192156, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[23.192465, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[23.713533, "o", "\u001b[38;5;252m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;231m\u001b[19;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;252m--\u001b[116C--\u001b[19;1H\u001b[38;5;231m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H "]
|
||||
[23.713917, "o", " \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H "]
|
||||
[23.714518, "o", " \u001b[17;1H \u001b[18;1H \u001b[20;1H\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[20;1H\u001b[34h\u001b[?25h\u001b[?1006l\u001b[?1002l"]
|
||||
[23.719557, "o", "\u001b[3d\u001b[38;5;254m\u001b[48;5;240mFlows \u001b[4;1H\u001b[39m\u001b[49m \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H "]
|
||||
[23.719872, "o", " \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [0/0] [*:8080]\u001b[18;1H\u001b[39m\u001b[49m "]
|
||||
[23.7201, "o", " \u001b[?25l\r \u001b[18;119H \u001b[20;1H\u001b[34h\u001b[?25h"]
|
||||
[23.72921, "o", "\u001b[?25l\u001b[38;5;252m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;231m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;252m--\u001b[116C--\u001b[24;1H\u001b[38;5;231m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H "]
|
||||
[23.72932, "o", " \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H "]
|
||||
[23.729618, "o", " \u001b[38;5;254m\u001b[48;5;240m\u001b[17;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[18;1H \u001b[19;1H\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[2B\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[25;1H"]
|
||||
[23.734426, "o", "[tutorial@mitmproxy] $ "]
|
||||
[23.96409, "o", "\r\u001b[K[tutorial@mitmproxy] $ "]
|
||||
[23.966279, "o", "\u001b[3;1H\u001b[38;5;254m\u001b[48;5;240mFlows \u001b[4;1H\u001b[39m\u001b[49m \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H "]
|
||||
[23.966465, "o", " \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H "]
|
||||
[23.966666, "o", " \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [0/0] [*:8080]\u001b[23;1H\u001b[39m\u001b[49m \u001b[?25l\r \u001b[23;119H \u001b[25;24H\u001b[34h\u001b[?25h"]
|
||||
[24.654235, "o", "\u001b[?25l\u001b[38;5;252m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;231m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;252m--\u001b[116C--\u001b[24;1H\u001b[38;5;231m--\u001b[116C--\u001b[m\u000f\u001b[34h\u001b[?25h\u001b[25;24H"]
|
||||
[25.774574, "o", "c"]
|
||||
[25.916174, "o", "u"]
|
||||
[26.398517, "o", "r"]
|
||||
[26.541461, "o", "l"]
|
||||
[26.65522, "o", " "]
|
||||
[27.056823, "o", "-"]
|
||||
[27.333167, "o", "-"]
|
||||
[27.474742, "o", "p"]
|
||||
[27.847369, "o", "r"]
|
||||
[27.986636, "o", "o"]
|
||||
[28.1175, "o", "x"]
|
||||
[28.281737, "o", "y"]
|
||||
[28.563095, "o", " "]
|
||||
[29.069705, "o", "h"]
|
||||
[29.222528, "o", "t"]
|
||||
[29.409054, "o", "t"]
|
||||
[29.675483, "o", "p"]
|
||||
[29.819957, "o", ":"]
|
||||
[29.974069, "o", "/"]
|
||||
[30.083711, "o", "/"]
|
||||
[30.578807, "o", "1"]
|
||||
[30.684442, "o", "2"]
|
||||
[30.772525, "o", "7"]
|
||||
[30.906137, "o", "."]
|
||||
[31.365822, "o", "0"]
|
||||
[31.562182, "o", "."]
|
||||
[31.940504, "o", "0"]
|
||||
[32.031816, "o", "."]
|
||||
[32.403257, "o", "1"]
|
||||
[32.651127, "o", ":"]
|
||||
[32.820344, "o", "8"]
|
||||
[33.060766, "o", "0"]
|
||||
[33.144638, "o", "8"]
|
||||
[33.272847, "o", "0"]
|
||||
[33.642573, "o", " "]
|
||||
[34.184317, "o", "\""]
|
||||
[34.621501, "o", "h"]
|
||||
[35.035189, "o", "t"]
|
||||
[35.315846, "o", "t"]
|
||||
[35.576454, "o", "p"]
|
||||
[35.721231, "o", ":"]
|
||||
[35.965739, "o", "/"]
|
||||
[36.070113, "o", "/"]
|
||||
[36.206258, "o", "w"]
|
||||
[36.389799, "o", "t"]
|
||||
[36.530602, "o", "t"]
|
||||
[36.763277, "o", "r"]
|
||||
[36.934585, "o", "."]
|
||||
[37.414853, "o", "i"]
|
||||
[37.546245, "o", "n"]
|
||||
[37.920759, "o", "/"]
|
||||
[38.373446, "o", "D"]
|
||||
[38.613175, "o", "u"]
|
||||
[38.778883, "o", "n"]
|
||||
[39.108279, "o", "e"]
|
||||
[39.378121, "o", "d"]
|
||||
[39.719854, "o", "i"]
|
||||
[39.884603, "o", "n"]
|
||||
[40.199092, "o", "?"]
|
||||
[40.680744, "o", "0"]
|
||||
[40.883111, "o", "\""]
|
||||
[42.338126, "o", "\r\n"]
|
||||
[42.476074, "o", "\u001b[4d\u001b[38;5;245m>>16:46:09\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[22;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [1/1] [*:8080]\u001b[26;1H\u001b[m\u000f"]
|
||||
[42.54193, "o", "\u001b[4d\u001b[38;5;245m>>16:46:09\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m…\u001b[38;5;240mntent missing]\u001b[39m \u001b[26;1H"]
|
||||
[42.54426, "o", "Weather report: Dunedin\u001b[28;1H \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \r\n"]
|
||||
[42.545634, "o", "[tutorial@mitmproxy] $ "]
|
||||
[42.550794, "o", "\u001b[4;1H\u001b[38;5;245m>>16:46:09\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m190ms\u001b[39m \u001b[33;24H"]
|
||||
[45.023213, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[m\u000f\u001b[34h\u001b[?25h\u001b[3;1H\u001b[?25l\u001b[?1006h\u001b[?1002h"]
|
||||
[45.024263, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[m\u000f\u001b[3;1H"]
|
||||
[45.038035, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:46:09\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m190ms\u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[45.038276, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[45.038481, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] "]
|
||||
[45.03858, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Dunedin\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\u001b[K\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[45.043045, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H We now want to replay the this request. \u001b[m\u000f\u001b[3;1H"]
|
||||
[48.167914, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:46:09\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m190ms\u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[48.168139, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[48.168321, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] "]
|
||||
[48.168503, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Dunedin\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\u001b[K\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[48.671592, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:46:09\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m190ms\u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[48.671703, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[48.671962, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] "]
|
||||
[48.672067, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Dunedin\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\u001b[K\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[48.676143, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Put the focus (`>>`) on the request that should be replayed. This is already the case in our example. \u001b[m\u000f\u001b[3;1H"]
|
||||
[56.75396, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:46:09\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m190ms\u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[56.75408, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[56.754272, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] "]
|
||||
[56.75436, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Dunedin\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\u001b[K\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[57.263754, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:46:09\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m190ms\u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[57.263871, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[57.264165, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] "]
|
||||
[57.264344, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Dunedin\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\u001b[K\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[57.269465, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Press `r` to replay the request. \u001b[m\u000f\u001b[3;1H"]
|
||||
[59.825359, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:46:09\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m190ms\u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[59.825576, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[59.825897, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] "]
|
||||
[59.826168, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Dunedin\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\u001b[K\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[60.354657, "o", "\r\n\u001b[38;5;245m>>16:46:09\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;64m↺\u001b[39m \u001b[22;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [1/1] [\u001b[38;5;33m\u001b[1mcplayback\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:1] [*:8080]\u001b[22;120H\u001b[m\u000f"]
|
||||
[60.360882, "o", "\u001b[3;1H"]
|
||||
[60.437815, "o", "\r\n\u001b[38;5;245m>>16:46:27\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;47m 36ms\u001b[39m \u001b[38;5;64m↺\u001b[39m \u001b[4;120H"]
|
||||
[60.478516, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:46:27\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;47m 36ms\u001b[39m \u001b[38;5;64m↺\u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[60.478876, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[60.479101, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] [\u001b[38;5;33m\u001b[1mcplayback\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m"]
|
||||
[60.479342, "o", ":1] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Dunedin\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\u001b[K\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[4;120H"]
|
||||
[60.48448, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Note that no new rows are added for replayed flows, but the existing row is updated. \u001b[m\u000f\u001b[4;120H"]
|
||||
[60.757389, "o", "\u001b[22d"]
|
||||
[61.257783, "o", "\u001b[3;1H"]
|
||||
[67.20642, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:46:27\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;47m 36ms\u001b[39m \u001b[38;5;64m↺\u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[67.206534, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[67.206813, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] "]
|
||||
[67.207053, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Dunedin\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\u001b[K\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[67.717144, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:46:27\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;47m 36ms\u001b[39m \u001b[38;5;64m↺\u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[67.717266, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[67.717521, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] "]
|
||||
[67.717596, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Dunedin\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\u001b[K\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[67.721475, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Every time you press `r`, mitmproxy sends this request to the server again and updates the flow. \u001b[m\u000f\u001b[3;1H"]
|
||||
[75.40244, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:46:27\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;47m 36ms\u001b[39m \u001b[38;5;64m↺\u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[75.402557, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[75.402898, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] "]
|
||||
[75.40319, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Dunedin\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\u001b[K\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[75.919194, "o", "\r\n\u001b[38;5;245m>>16:46:27\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;64m↺\u001b[39m \u001b[22;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [1/1] [\u001b[38;5;33m\u001b[1mcplayback\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:1] [*:8080]\u001b[22;120H\u001b[m\u000f"]
|
||||
[75.925877, "o", "\u001b[3;1H"]
|
||||
[76.099689, "o", "\r\n\u001b[38;5;245m>>16:46:42\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;47m 34ms\u001b[39m \u001b[38;5;64m↺\u001b[39m \u001b[4;120H"]
|
||||
[76.295507, "o", "\u001b[22;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [1/1] [*:8080]\u001b[22;120H\u001b[m\u000f"]
|
||||
[76.798244, "o", "\u001b[3;1H"]
|
||||
[77.755885, "o", "\r\n\u001b[38;5;245m>>16:46:42\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;64m↺\u001b[39m \u001b[22;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [1/1] [\u001b[38;5;33m\u001b[1mcplayback\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:1] [*:8080]\u001b[22;120H\u001b[m\u000f"]
|
||||
[77.800223, "o", "\u001b[3;1H"]
|
||||
[77.834335, "o", "\r\n\u001b[38;5;245m>>16:46:44\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;47m 36ms\u001b[39m \u001b[38;5;64m↺\u001b[39m \u001b[4;120H"]
|
||||
[78.302177, "o", "\u001b[22;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [1/1] [*:8080]\u001b[22;120H\u001b[m\u000f"]
|
||||
[78.775163, "o", "\u001b[4;1H\u001b[38;5;245m>>16:46:44\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;64m↺\u001b[39m \u001b[22;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [1/1] [\u001b[38;5;33m\u001b[1mcplayback\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:1] [*:8080]\u001b[22;120H\u001b[m\u000f"]
|
||||
[78.781144, "o", "\u001b[3;1H"]
|
||||
[78.856125, "o", "\r\n\u001b[38;5;245m>>16:46:45\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;47m 35ms\u001b[39m \u001b[38;5;64m↺\u001b[39m \u001b[4;120H"]
|
||||
[79.301731, "o", "\u001b[22;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [1/1] [*:8080]\u001b[22;120H\u001b[m\u000f"]
|
||||
[79.805789, "o", "\u001b[3;1H"]
|
||||
[81.184175, "o", "\r\n\u001b[38;5;245m>>16:46:45\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;64m↺\u001b[39m \u001b[22;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [1/1] [\u001b[38;5;33m\u001b[1mcplayback\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:1] [*:8080]\u001b[22;120H\u001b[m\u000f"]
|
||||
[81.260433, "o", "\u001b[4;1H\u001b[38;5;245m>>16:46:48\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;47m 34ms\u001b[39m \u001b[38;5;64m↺\u001b[39m \u001b[4;120H"]
|
||||
[81.308705, "o", "\u001b[22;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [1/1] [*:8080]\u001b[22;120H\u001b[m\u000f"]
|
||||
[81.811707, "o", "\u001b[3;1H"]
|
||||
[81.97175, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:46:48\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;47m 34ms\u001b[39m \u001b[38;5;64m↺\u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[81.972064, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[81.97237, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] "]
|
||||
[81.972478, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Dunedin\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\u001b[K\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[81.977369, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H You can also modify a flow before replaying it. \u001b[m\u000f\u001b[3;1H"]
|
||||
[85.741243, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:46:48\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;47m 34ms\u001b[39m \u001b[38;5;64m↺\u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[85.741354, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[85.741684, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] "]
|
||||
[85.741994, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Dunedin\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\u001b[K\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[86.246679, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:46:48\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;47m 34ms\u001b[39m \u001b[38;5;64m↺\u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[86.247018, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[86.247249, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] "]
|
||||
[86.247458, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Dunedin\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\u001b[K\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[86.252291, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H It works as shown in the previous lesson, by pressing `e`. \u001b[m\u000f\u001b[3;1H"]
|
||||
[90.894859, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:46:48\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;47m 34ms\u001b[39m \u001b[38;5;64m↺\u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[90.895114, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[90.895309, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] "]
|
||||
[90.895543, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Dunedin\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\u001b[K\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[91.402561, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:46:48\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;47m 34ms\u001b[39m \u001b[38;5;64m↺\u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[91.402664, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[91.403111, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] "]
|
||||
[91.403513, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Dunedin\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\u001b[K\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
||||
[91.407509, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Congratulations! You have completed all lessons of the mitmproxy tutorial. \u001b[m\u000f\u001b[3;1H"]
|
||||
[97.328166, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;252m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;231m--\u001b[116C--\u001b[24;1H\u001b[38;5;252m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:46:48\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;47m 34ms\u001b[39m \u001b[38;5;64m↺\u001b[39m \u001b[5;1H \u001b[6;1H "]
|
||||
[97.328273, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[97.32849, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/1] "]
|
||||
[97.328694, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmproxy] $ curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\"\u001b[K\r\nWeather report: Dunedin\u001b[K\r\n\u001b[K\r\n \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\u001b[K\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \u001b[K\r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \u001b[K\r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \u001b[K\r\n[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;1H"]
|
@ -0,0 +1,52 @@
|
||||
[
|
||||
{
|
||||
"instruction": "1. Welcome to the mitmproxy tutorial. In this lesson we cover replaying requests.",
|
||||
"time_from": 0.0,
|
||||
"time_to": 6.2
|
||||
},
|
||||
{
|
||||
"instruction": "2. Let’s generate a request that we can replay. We use `curl` in a separate terminal.",
|
||||
"time_from": 15.4,
|
||||
"time_to": 22.0
|
||||
},
|
||||
{
|
||||
"instruction": "3. We now want to replay the this request.",
|
||||
"time_from": 43.8,
|
||||
"time_to": 46.9
|
||||
},
|
||||
{
|
||||
"instruction": "4. Put the focus (`>>`) on the request that should be replayed. This is already the case in our example.",
|
||||
"time_from": 47.4,
|
||||
"time_to": 55.5
|
||||
},
|
||||
{
|
||||
"instruction": "5. Press `r` to replay the request.",
|
||||
"time_from": 56.0,
|
||||
"time_to": 58.6
|
||||
},
|
||||
{
|
||||
"instruction": "6. Note that no new rows are added for replayed flows, but the existing row is updated.",
|
||||
"time_from": 59.2,
|
||||
"time_to": 65.9
|
||||
},
|
||||
{
|
||||
"instruction": "7. Every time you press `r`, mitmproxy sends this request to the server again and updates the flow.",
|
||||
"time_from": 66.5,
|
||||
"time_to": 74.2
|
||||
},
|
||||
{
|
||||
"instruction": "8. You can also modify a flow before replaying it.",
|
||||
"time_from": 80.7,
|
||||
"time_to": 84.5
|
||||
},
|
||||
{
|
||||
"instruction": "9. It works as shown in the previous lesson, by pressing `e`.",
|
||||
"time_from": 85.0,
|
||||
"time_to": 89.6
|
||||
},
|
||||
{
|
||||
"instruction": "10. Congratulations! You have completed all lessons of the mitmproxy tutorial.",
|
||||
"time_from": 90.1,
|
||||
"time_to": 96.0
|
||||
}
|
||||
]
|
636
docs/src/static/recordings/mitmproxy_user_interface.cast
Normal file
636
docs/src/static/recordings/mitmproxy_user_interface.cast
Normal file
@ -0,0 +1,636 @@
|
||||
{"version": 2, "width": 120, "height": 36, "timestamp": 1599237205, "env": {"SHELL": null, "TERM": "screen-256color"}}
|
||||
[0.007556, "o", "\u001b[?1049h\u001b[?1h\u001b=\u001b[H\u001b[J\u001b[34h\u001b[?25h\u001b[?1000l\u001b[?1002l\u001b[?1003l\u001b[?1006l\u001b[?1005l\u001b[m\u000f\u001b[34l\u001b[34h\u001b[?25h\u001b[?1006l\u001b[?1000l\u001b[?1002l\u001b[?1003l\u001b[?2004l\u001b[1;1H\u001b[1;36r\u001b[>c\u001b[>q\u001b[3;24H"]
|
||||
[0.008417, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[39m\u001b[3;1H[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[3;24H\r\u001b[K[tutorial@mitmproxy] $ "]
|
||||
[0.00871, "o", "\u001b[m\u000f\u001b[34l\u001b[34h\u001b[?25h\u001b[?1006l\u001b[?1000l\u001b[?1002l\u001b[?1003l\u001b[?2004l\u001b[1;1H\u001b[1;36r\u001b[3;24H"]
|
||||
[0.009521, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[39m\u001b[3;1H[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[3;24H"]
|
||||
[1.004237, "o", "\u001b[?7727h"]
|
||||
[1.263667, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[39m\u001b[3;1H[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[3;24H"]
|
||||
[1.269039, "o", "\u001b[?25l\u001b[38;5;231m\u001b[48;5;68m\u001b[H Welcome to the mitmproxy tutorial. In this lesson we cover the user interface. \u001b[m\u000f\u001b[3;24H"]
|
||||
[7.516957, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[39m\u001b[3;1H[tutorial@mitmproxy] $ \u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[3;24H\u001b[34h\u001b[?25h"]
|
||||
[9.034724, "o", "m"]
|
||||
[9.183787, "o", "i"]
|
||||
[9.399052, "o", "t"]
|
||||
[9.608301, "o", "m"]
|
||||
[10.092575, "o", "p"]
|
||||
[10.371433, "o", "r"]
|
||||
[10.48108, "o", "o"]
|
||||
[10.693353, "o", "x"]
|
||||
[10.788432, "o", "y"]
|
||||
[12.240762, "o", "\r\n"]
|
||||
[13.166337, "o", "\u001b[?25l\u001bM\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[34h\u001b[?25h\u001b[4d\u001b[?1006h\u001b[?1002h"]
|
||||
[13.166734, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[m\u000f\u001b[34h\u001b[?25h\u001b[4;1H"]
|
||||
[13.167175, "o", "\u001bM\u001b[38;5;254m\u001b[48;5;240mFlows \u001b[4;1H\u001b[39m\u001b[49m \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H "]
|
||||
[13.167365, "o", " \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H "]
|
||||
[13.167568, "o", " \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[2"]
|
||||
[13.167733, "o", "7;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[?25l \u001b[33;1H \u001b[34;1H \u001b[35;"]
|
||||
[13.168001, "o", "1H\u001b[38;5;254m\u001b[48;5;240m⇩ [0/0] [*:8080]\u001b[36;1H\u001b[39m\u001b[49m \r \u001b[36;119H "]
|
||||
[13.65232, "o", "\u001b[3;1H"]
|
||||
[15.874704, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[15.875015, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[15.875277, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[15.875327, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[15.875696, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[15.879154, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H This is the default view of mitmproxy. \u001b[m\u000f\u001b[3;1H"]
|
||||
[18.913846, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[18.914062, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[18.914291, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[18.914411, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[18.914656, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[19.426193, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[19.426293, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[19.426548, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[19.426873, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[19.426942, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[19.430602, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H mitmproxy adds rows to the view as new requests come in. \u001b[m\u000f\u001b[3;1H"]
|
||||
[23.903906, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[23.904027, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[23.904224, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[23.904485, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[23.904574, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[24.420254, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[24.42059, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[24.420692, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[24.420744, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[24.42078, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[24.427681, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Let’s generate some requests using `curl` in a separate terminal. \u001b[m\u000f\u001b[3;1H"]
|
||||
[29.628272, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H "]
|
||||
[29.628589, "o", " \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "]
|
||||
[29.628776, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H \u001b[25;1H "]
|
||||
[29.628884, "o", " \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H \u001b[33;1H "]
|
||||
[29.628951, "o", " \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[30.149312, "o", "\u001b[38;5;252m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;231m\u001b[19;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;252m--\u001b[116C--\u001b[19;1H\u001b[38;5;231m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H "]
|
||||
[30.149595, "o", " \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H "]
|
||||
[30.149811, "o", " \u001b[17;1H \u001b[18;1H \u001b[20;1H\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[20;1H\u001b[34h\u001b[?25h\u001b[?1006l\u001b[?1002l"]
|
||||
[30.153233, "o", "\u001b[3d\u001b[38;5;254m\u001b[48;5;240mFlows \u001b[4;1H\u001b[39m\u001b[49m \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H "]
|
||||
[30.153529, "o", " \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [0/0] [*:8080]\u001b[18;1H\u001b[39m\u001b[49m "]
|
||||
[30.154164, "o", " \u001b[?25l\r \u001b[18;119H \u001b[20;1H\u001b[34h\u001b[?25h"]
|
||||
[30.162015, "o", "\u001b[?25l\u001b[38;5;252m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;231m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;252m--\u001b[116C--\u001b[24;1H\u001b[38;5;231m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H "]
|
||||
[30.162369, "o", " \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H "]
|
||||
[30.162714, "o", " \u001b[38;5;254m\u001b[48;5;240m\u001b[17;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[18;1H \u001b[19;1H\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[2B\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[25;1H"]
|
||||
[30.16992, "o", "[tutorial@mitmproxy] $ "]
|
||||
[30.399831, "o", "\u001b[?25l\u001b[38;5;252m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;231m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;252m--\u001b[116C--\u001b[24;1H\u001b[38;5;231m--\u001b[116C--\u001b[m\u000f\u001b[34h\u001b[?25h\u001b[25;24H"]
|
||||
[30.400068, "o", "\r\u001b[K[tutorial@mitmproxy] $ "]
|
||||
[30.404189, "o", "\u001b[3;1H\u001b[38;5;254m\u001b[48;5;240mFlows \u001b[4;1H\u001b[39m\u001b[49m \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H "]
|
||||
[30.404505, "o", " \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H "]
|
||||
[30.404945, "o", " \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [0/0] [*:8080]\u001b[23;1H\u001b[39m\u001b[49m \u001b[?25l\r \u001b[23;119H \u001b[25;24H\u001b[34h\u001b[?25h"]
|
||||
[32.204087, "o", "c"]
|
||||
[32.432837, "o", "u"]
|
||||
[32.718346, "o", "r"]
|
||||
[32.940018, "o", "l"]
|
||||
[33.041271, "o", "\u001b[?25l\u001b[38;5;252m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;231m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;252m--\u001b[116C--\u001b[24;1H\u001b[38;5;231m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H "]
|
||||
[33.04157, "o", " \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H "]
|
||||
[33.04171, "o", " \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mi"]
|
||||
[33.041791, "o", "tmproxy] $ curl\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[25;28H"]
|
||||
[33.047292, "o", "\u001b[?25l\u001b[38;5;231m\u001b[48;5;68m\u001b[H Use curl’s `--proxy` option to configure mitmproxy as a proxy. \u001b[m\u000f\u001b[25;28H"]
|
||||
[38.003615, "o", "\u001b[38;5;252m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;231m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;252m--\u001b[116C--\u001b[24;1H\u001b[38;5;231m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H "]
|
||||
[38.003715, "o", " \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H "]
|
||||
[38.004043, "o", " \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmprox"]
|
||||
[38.004111, "o", "y] $ curl\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[25;28H\u001b[34h\u001b[?25h"]
|
||||
[38.52878, "o", " "]
|
||||
[39.034978, "o", "-"]
|
||||
[39.384481, "o", "-"]
|
||||
[40.029994, "o", "p"]
|
||||
[40.247267, "o", "r"]
|
||||
[40.569043, "o", "o"]
|
||||
[40.655744, "o", "x"]
|
||||
[40.895246, "o", "y"]
|
||||
[41.025989, "o", " "]
|
||||
[41.556136, "o", "h"]
|
||||
[41.842964, "o", "t"]
|
||||
[42.284391, "o", "t"]
|
||||
[42.451292, "o", "p"]
|
||||
[42.708454, "o", ":"]
|
||||
[42.927481, "o", "/"]
|
||||
[43.247116, "o", "/"]
|
||||
[43.426874, "o", "1"]
|
||||
[43.6688, "o", "2"]
|
||||
[44.080657, "o", "7"]
|
||||
[44.265656, "o", "."]
|
||||
[44.742702, "o", "0"]
|
||||
[44.842783, "o", "."]
|
||||
[45.241414, "o", "0"]
|
||||
[45.325466, "o", "."]
|
||||
[45.716978, "o", "1"]
|
||||
[46.136433, "o", ":"]
|
||||
[46.279829, "o", "8"]
|
||||
[46.724813, "o", "0"]
|
||||
[46.966786, "o", "8"]
|
||||
[47.139137, "o", "0"]
|
||||
[47.326906, "o", "\u001b[?25l\u001b[38;5;252m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;231m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;252m--\u001b[116C--\u001b[24;1H\u001b[38;5;231m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H "]
|
||||
[47.327175, "o", " \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H "]
|
||||
[47.327341, "o", " \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mi"]
|
||||
[47.327715, "o", "tmproxy] $ curl --proxy http://127.0.0.1:8080\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[25;58H"]
|
||||
[47.332231, "o", "\u001b[?25l\u001b[38;5;231m\u001b[48;5;68m\u001b[H We use the text-based weather service `wttr.in`. \u001b[m\u000f\u001b[25;58H"]
|
||||
[51.176121, "o", "\u001b[38;5;252m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[38;5;231m\u001b[24;3H Terminal Window 2 -------------------------------------------------------------------------------------------------\u001b[H\r\n\u001b[38;5;252m--\u001b[116C--\u001b[24;1H\u001b[38;5;231m--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[39m\u001b[49m\u001b[4;1H \u001b[5;1H \u001b[6;1H \u001b[7;1H \u001b[8;1H "]
|
||||
[51.176723, "o", " \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H "]
|
||||
[51.177122, "o", " \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [0/0] [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[25;1H[tutorial@mitmprox"]
|
||||
[51.177474, "o", "y] $ curl --proxy http://127.0.0.1:8080\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[25;58H\u001b[34h\u001b[?25h"]
|
||||
[51.69614, "o", " "]
|
||||
[52.231537, "o", "\""]
|
||||
[52.348712, "o", "h"]
|
||||
[52.606384, "o", "t"]
|
||||
[52.82479, "o", "t"]
|
||||
[53.000977, "o", "p"]
|
||||
[53.557768, "o", ":"]
|
||||
[54.010924, "o", "/"]
|
||||
[54.239458, "o", "/"]
|
||||
[54.510553, "o", "w"]
|
||||
[54.901708, "o", "t"]
|
||||
[55.299263, "o", "t"]
|
||||
[55.471546, "o", "r"]
|
||||
[55.592208, "o", "."]
|
||||
[55.987543, "o", "i"]
|
||||
[56.152117, "o", "n"]
|
||||
[56.386589, "o", "/"]
|
||||
[56.589924, "o", "D"]
|
||||
[56.976625, "o", "u"]
|
||||
[57.110029, "o", "n"]
|
||||
[57.365781, "o", "e"]
|
||||
[57.998059, "o", "d"]
|
||||
[58.2042, "o", "i"]
|
||||
[58.592194, "o", "n"]
|
||||
[58.868106, "o", "?"]
|
||||
[59.122212, "o", "0"]
|
||||
[59.277812, "o", "\""]
|
||||
[60.694258, "o", "\r\n"]
|
||||
[60.857817, "o", "\u001b[4d\u001b[38;5;245m>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[22;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [1/1] [*:8080]\u001b[26;1H\u001b[m\u000f"]
|
||||
[60.90042, "o", "\u001b[4d\u001b[38;5;245m>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m…\u001b[38;5;240mntent missing]\u001b[39m \u001b[26;1H"]
|
||||
[60.90379, "o", "Weather report: Dunedin\u001b[28;1H \u001b[38;5;226m _`/\"\"\u001b[38;5;250m.-. \u001b[39m Patchy rain possible\r\n \u001b[38;5;226m ,\\_\u001b[38;5;250m( ). \u001b[39m \u001b[38;5;47m7\u001b[39m..\u001b[38;5;46m8\u001b[39m °C \r\n \u001b[38;5;226m /\u001b[38;5;250m(___(__) \u001b[39m \u001b[1m↘\u001b[m\u000f \u001b[38;5;190m10\u001b[39m km/h \r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 10 km \r\n \u001b[38;5;111m ‘ ‘ ‘ ‘ \u001b[39m 0.1 mm \r\n"]
|
||||
[60.905186, "o", "[tutorial@mitmproxy] $ "]
|
||||
[60.911111, "o", "\u001b[4;1H\u001b[38;5;245m>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[33;24H"]
|
||||
[63.419123, "o", "curl --proxy http://127.0.0.1:8080 \"http://wttr.in/Dunedin?0\""]
|
||||
[63.677933, "o", "\b"]
|
||||
[63.931061, "o", "\b"]
|
||||
[64.152043, "o", "\b"]
|
||||
[64.277129, "o", "\b\u001b[1P?0\"\u001b[3D"]
|
||||
[64.392456, "o", "\b\u001b[1P?0\"\u001b[3D"]
|
||||
[64.628428, "o", "\b\u001b[1P?0\"\u001b[3D"]
|
||||
[64.732521, "o", "\b\u001b[1P?0\"\u001b[3D"]
|
||||
[64.858194, "o", "\b\u001b[1P?0\"\u001b[3D"]
|
||||
[64.99509, "o", "\b\u001b[1P?0\"\u001b[3D"]
|
||||
[65.116375, "o", "\b\u001b[1P?0\"\u001b[3D"]
|
||||
[65.278693, "o", "I?0\"\u001b[3D"]
|
||||
[65.627494, "o", "n?0\"\u001b[3D"]
|
||||
[65.815331, "o", "n?0\"\u001b[3D"]
|
||||
[66.089513, "o", "s?0\"\u001b[3D"]
|
||||
[66.183075, "o", "b?0\"\u001b[3D"]
|
||||
[66.385073, "o", "r?0\"\u001b[3D"]
|
||||
[66.505975, "o", "u?0\"\u001b[3D"]
|
||||
[66.74627, "o", "c?0\"\u001b[3D"]
|
||||
[66.920761, "o", "k?0\"\u001b[3D"]
|
||||
[68.446162, "o", "\r\n"]
|
||||
[68.489082, "o", "\u001b[5d \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[38;5;245m \u001b[39m \u001b[22;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [1/2] [*:8080]\u001b[34;1H\u001b[m\u000f"]
|
||||
[68.808966, "o", "\u001b[5d \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m…\u001b[38;5;240mntent missing]\u001b[39m \u001b[34;1H"]
|
||||
[68.813381, "o", "\u001b[25;36r\u001b[36;1H\n\u001b[3AWeather report: Innsbruck\u001b[35;1H \u001b[38;5;226m \\ / \u001b[39m Sunny\r\n\u001b[K \u001b[38;5;226m .-. \u001b[39m \u001b[38;5;220m25\u001b[39m..\u001b[38;5;220m27\u001b[39m °\r\n\u001b[35;25HC \r\n\u001b[K \u001b[38;5;226m ― ( ) ― \u001b[39m \u001b[1m↙\u001b[m\u000f\r\n\u001b[35;18H \u001b[38;5;154m9\u001b[39m km/h \r\n\u001b[K \u001b[38;5;226m `-’\u001b[39m\r\u001b[2S\u001b[34;11H\u001b[38;5;226m \u001b[39m 10 km \r\n\u001b[K \u001b[38;5;226m / \\ \u001b[39m 0.0 mm \r\n\u001b[K\u001b[1;36r\u001b[36;1H"]
|
||||
[68.815003, "o", "[tutorial@mitmproxy] $ "]
|
||||
[68.821736, "o", "\u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[36;24H"]
|
||||
[71.118721, "o", "e"]
|
||||
[71.396276, "o", "x"]
|
||||
[71.69005, "o", "i"]
|
||||
[71.800176, "o", "t"]
|
||||
[73.210002, "o", "\u001b[25;36r\u001b[36;1H\n\u001b[K\u001b[1;36r\u001b[36;1H\u001b[25;36r\u001b[36;1H\n\u001bMlogout\r\n\u001b[K\u001b[1;36r\u001b[36;1H"]
|
||||
[73.211707, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[73.212222, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[73.212565, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[22;1H⇩ [1/2] "]
|
||||
[73.212873, "o", " [*:8080]\u001b[39m\u001b[49m\u001b[23;1H \u001b[24;1H\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\r\n\u001b[K\u001b[38;5;231m\u001b[48;5;16m\u001b[H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[3;1H\u001b[?25l\u001b[?1006h\u001b[?1002h"]
|
||||
[73.217871, "o", "\u001b[38;5;254m\u001b[48;5;240mFlows \u001b[4;1H\u001b[49m\u001b[38;5;245m>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H \u001b[7;1H "]
|
||||
[73.217968, "o", " \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H "]
|
||||
[73.218102, "o", " \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H "]
|
||||
[73.218326, "o", " \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H "]
|
||||
[73.21851, "o", " \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[35;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [1/2] [*:8080]\u001b[36;1H\u001b[39m\u001b[49m \r \u001b[36;119H "]
|
||||
[73.395584, "o", "\u001b[3;1H"]
|
||||
[73.805, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[m\u000f\u001b[3;1H"]
|
||||
[73.818485, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[73.818592, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[73.818882, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[73.819084, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[73.819144, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[73.822843, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H You see the requests to `wttr.in` in the list of flows. \u001b[m\u000f\u001b[3;1H"]
|
||||
[78.224036, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[78.224238, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[78.224491, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[78.224645, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[78.224842, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[78.73254, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[78.732641, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[78.732797, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[78.732873, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[78.732921, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[78.737206, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H mitmproxy is controlled using keyboard shortcuts. \u001b[m\u000f\u001b[3;1H"]
|
||||
[82.653935, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[82.654037, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[82.654313, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[82.65453, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[82.65464, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[83.166428, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[83.166799, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[83.166923, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[83.167219, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[83.167482, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[83.172296, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Use your arrow keys `↑` and `↓` to change the focused flow (`>>`). \u001b[m\u000f\u001b[3;1H"]
|
||||
[88.460536, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[88.460641, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[88.460897, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[88.461078, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[88.461399, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[88.972404, "o", "\r\n \u001b[38;5;245m16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H\u001b[38;5;245m>>16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[35;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [2/2] [*:8080]\u001b[35;120H\u001b[m\u000f"]
|
||||
[89.351611, "o", "\u001b[4;1H\u001b[38;5;245m>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[35;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [1/2] [*:8080]\u001b[35;120H\u001b[m\u000f"]
|
||||
[89.442377, "o", "\u001b[3;1H"]
|
||||
[90.163659, "o", "\r\n \u001b[38;5;245m16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H\u001b[38;5;245m>>16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[35;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [2/2] [*:8080]\u001b[35;120H\u001b[m\u000f"]
|
||||
[90.444678, "o", "\u001b[3;1H"]
|
||||
[90.839237, "o", "\r\n\u001b[38;5;245m>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[35;1H\u001b[38;5;254m\u001b[48;5;240m⇩ [1/2] [*:8080]\u001b[35;120H\u001b[m\u000f"]
|
||||
[90.944966, "o", "\u001b[3;1H"]
|
||||
[91.8883, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[91.888414, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[91.888569, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[91.888812, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[91.889029, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[91.893236, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H The focused flow (`>>`) is used as a target for various commands. \u001b[m\u000f\u001b[3;1H"]
|
||||
[97.101816, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[97.101929, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[97.102254, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[97.102528, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[97.102718, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[97.603756, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[97.604042, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[97.604738, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[97.60501, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[97.605434, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[97.609096, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H One such command shows the flow details, it is bound to `ENTER`. \u001b[m\u000f\u001b[3;1H"]
|
||||
[102.731566, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[102.731913, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[102.732159, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[102.732466, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[102.732754, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[103.239611, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[103.239835, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[103.240604, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[103.240874, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[103.241117, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[103.244498, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Press `ENTER` to view the details of the focused flow. \u001b[m\u000f\u001b[3;1H"]
|
||||
[107.569695, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[107.570013, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[107.570277, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[107.57062, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[107.570961, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[108.086115, "o", "\u001b[38;5;254m\u001b[48;5;240mFlow Details \u001b[4;1H\u001b[49m\u001b[38;5;240m2020-09-04 16:34:26\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;245mhttp://wttr.in/Dunedin?0\u001b[39m \u001b[5;1H \u001b[38;5;64m←\u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;64mOK\u001b[39m \u001b[38;5;245mtext/plain\u001b[39m \u001b[38;5;47m386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[6;1H\u001b[38;5;254m\u001b[48;5;240m Request \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[7;1H\u001b[49m\u001b[38;5;33mHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m \u001b[8;1H\u001b[38;5;33mUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m "]
|
||||
[108.086428, "o", " \u001b[9;1H\u001b[38;5;33mAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m \u001b[10;1H\u001b[38;5;33mProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[11;1H\u001b[38;5;254m\u001b[48;5;240mQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[12;1H\u001b[49m\u001b[38;5;33m0: \u001b[39m \u001b[12;120H"]
|
||||
[108.336833, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:34:26\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;245mhttp://wttr.in/Dunedin?0\u001b[39m \u001b[5;1H \u001b[38;5;64m←\u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;64mOK\u001b[39m \u001b[38;5;245mtext/plain\u001b[39m \u001b[38;5;47m386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m "]
|
||||
[108.336939, "o", " \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m \u001b[13;1H \u001b[14;1H "]
|
||||
[108.337164, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[108.337365, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[108.337508, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[12;120H"]
|
||||
[108.342096, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H The flow details view has 3 panes: request, response, and detail. \u001b[m\u000f\u001b[12;120H"]
|
||||
[108.494151, "o", "\u001b[3;1H"]
|
||||
[113.535966, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:34:26\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;245mhttp://wttr.in/Dunedin?0\u001b[39m \u001b[5;1H \u001b[38;5;64m←\u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;64mOK\u001b[39m \u001b[38;5;245mtext/plain\u001b[39m \u001b[38;5;47m386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m "]
|
||||
[113.53621, "o", " \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m \u001b[13;1H \u001b[14;1H "]
|
||||
[113.536488, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[113.536657, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[113.536851, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[114.052869, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:34:26\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;245mhttp://wttr.in/Dunedin?0\u001b[39m \u001b[5;1H \u001b[38;5;64m←\u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;64mOK\u001b[39m \u001b[38;5;245mtext/plain\u001b[39m \u001b[38;5;47m386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m "]
|
||||
[114.052998, "o", " \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m \u001b[13;1H \u001b[14;1H "]
|
||||
[114.053285, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[114.053602, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[114.053804, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[114.057723, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Use your arrow keys `←` and `→` to switch between panes. \u001b[m\u000f\u001b[3;1H"]
|
||||
[118.538692, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:34:26\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;245mhttp://wttr.in/Dunedin?0\u001b[39m \u001b[5;1H \u001b[38;5;64m←\u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;64mOK\u001b[39m \u001b[38;5;245mtext/plain\u001b[39m \u001b[38;5;47m386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m "]
|
||||
[118.53897, "o", " \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m \u001b[13;1H \u001b[14;1H "]
|
||||
[118.539157, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[118.539399, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[118.539578, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[119.056207, "o", "\u001b[3B\u001b[38;5;245m\u001b[48;5;235m Request \u001b[39m\u001b[49m \u001b[38;5;254m\u001b[48;5;240m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[7;1H\u001b[49m\u001b[38;5;33mServer:\u001b[39m \u001b[38;5;245mnginx/1.10.3\u001b[39m \u001b[8;1H\u001b[38;5;33mDate:\u001b[39m \u001b[38;5;245mFri, 04 Sep 2020 16:34:28 GMT\u001b[39m \u001b[9;1H\u001b[38;5;33mContent-Type:\u001b[39m \u001b[38;5;245mtext/plain; charset=utf-8\u001b[39m \u001b[10;1H\u001b[38;5;33mContent-Length:\u001b[39m \u001b[38;5;245m386\u001b[39m \u001b[11;1H\u001b[38;5;33mConnection:\u001b[39m \u001b[38;5;245mkeep-alive\u001b[39m \u001b[12;1H\u001b[38;5;33mAcces"]
|
||||
[119.056383, "o", "s-Control-Allow-Origin:\u001b[39m \u001b[38;5;245m*\u001b[39m \u001b[13;1H\u001b[38;5;254m\u001b[48;5;240mRaw [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[14;1H\u001b[49m\u001b[38;5;245mWeather report: Dunedin\u001b[39m \u001b[16;1H\u001b[38;5;245m \\x1b[38;5;226m _`/\"\"\\x1b[38;5;250m.-. \\x1b[0m Patchy rain possible\u001b[39m \u001b[17;1H\u001b[38;5;245m \\x1b[38;5;226m ,\\\\_\\x1b[38;5;250m( ). \\x1b[0m \\x1b[38;5;047m7\\x1b[0m..\\x1b[38;5;046m8\\x1b[0m \\xc2\\xb0C\\x1b[0m \u001b[18;1H \u001b[39m \u001b[19;1H\u001b[38;5;245m \\x1b[38;5;226m /\\x1b[38;5;250m(___(__) \\x1b[0m \\x1b[1m\\xe2\\x86\\x98\\x1b[0m \\x1b[38;5;190m10\\x1b[0m km/h\\x1b[0m \u001b"]
|
||||
[119.056526, "o", "[39m \u001b[20;1H\u001b[38;5;245m \\x1b[38;5;111m \\xe2\\x80\\x98 \\xe2\\x80\\x98 \\xe2\\x80\\x98 \\xe2\\x80\\x98 \\x1b[0m 10 km\\x1b[0m \u001b[39m \u001b[21;1H\u001b[38;5;245m \\x1b[38;5;111m \\xe2\\x80\\x98 \\xe2\\x80\\x98 \\xe2\\x80\\x98 \\xe2\\x80\\x98 \\x1b[0m 0.1 mm\\x1b[0m \u001b[39m \u001b[21;120H"]
|
||||
[119.52303, "o", "\u001b[3;1H"]
|
||||
[123.533955, "o", "\u001b[3B\u001b[38;5;245m\u001b[48;5;235m Request \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5;254m\u001b[48;5;240m Detail \u001b[7;1H\u001b[49mServer Connection:\u001b[39m \u001b[8;1H \u001b[38;5;33mAddress\u001b[39m \u001b[38;5;245mwttr.in:80\u001b[39m \u001b[9;1H \u001b[38;5;33mResolved Address\u001b[39m \u001b[38;5;245m5.9.243.187:80\u001b[39m \u001b[10;1H \u001b[38;5;33mHTTP Version\u001b[39m \u001b[38;5;245mHTTP/1.1\u001b[39m \u001b[11;1H\u001b[38;5;254mClient Connection:\u001b[39m \u001b[12;1H \u001b[38;5;33mAddress\u001b[39m \u001b[38;5;245m::ffff:127.0"]
|
||||
[123.534186, "o", ".0.1:58880\u001b[39m \u001b[13;1H \u001b[38;5;33mHTTP Version\u001b[39m \u001b[38;5;245mHTTP/1.1\u001b[39m \u001b[14;1H\u001b[38;5;254mTiming:\u001b[39m \u001b[15;1H \u001b[38;5;33mClient conn. established\u001b[39m \u001b[38;5;245m2020-09-04 16:34:26.601\u001b[39m \u001b[16;1H \u001b[38;5;33mFirst request byte\u001b[39m \u001b[38;5;245m2020-09-04 16:34:26.604\u001b[39m \u001b[17;1H \u001b[38;5;33mRequest complete\u001b[39m \u001b[38;5;245m2020-09-04 16:34:26.608\u001b[39m \u001b[18;1H \u001b[38;5;33mServer conn. initiated\u001b[39m \u001b[38;5;245m2020-09-04 16:34:26.611\u001b[39m "]
|
||||
[123.534394, "o", " \u001b[19;1H \u001b[38;5;33mServer conn. TCP handshake\u001b[39m \u001b[38;5;245m2020-09-04 16:34:26.660\u001b[39m \u001b[20;1H \u001b[38;5;33mFirst response byte\u001b[39m \u001b[38;5;245m2020-09-04 16:34:26.790\u001b[39m \u001b[21;1H \u001b[38;5;33mResponse complete\u001b[39m \u001b[38;5;245m2020-09-04 16:34:26.797\u001b[39m \u001b[22;1H \u001b[38;5;33mServer conn. closed\u001b[39m \u001b[38;5;245m2020-09-04 16:34:26.800\u001b[39m \u001b[23;1H \u001b[38;5;33mClient conn. closed\u001b[39m \u001b[38;5;245m2020-09-04 16:34:26.809\u001b[39m \u001b[23;120H"]
|
||||
[123.539719, "o", "\u001b[3;1H"]
|
||||
[129.335709, "o", "\u001b[3B\u001b[38;5;245m\u001b[48;5;235m Request \u001b[39m\u001b[49m \u001b[38;5;254m\u001b[48;5;240m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[7;1H\u001b[49m\u001b[38;5;33mServer:\u001b[39m \u001b[38;5;245mnginx/1.10.3\u001b[39m \u001b[8;1H\u001b[38;5;33mDate:\u001b[39m \u001b[38;5;245mFri, 04 Sep 2020 16:34:28 GMT\u001b[39m \u001b[9;1H\u001b[38;5;33mContent-Type:\u001b[39m \u001b[38;5;245mtext/plain; charset=utf-8\u001b[39m \u001b[10;1H\u001b[38;5;33mContent-Length:\u001b[39m \u001b[38;5;245m386\u001b[39m \u001b[11;1H\u001b[38;5;33mConnection:\u001b[39m \u001b[38;5;245mkeep-alive\u001b[39m \u001b[12;1H\u001b[38;5;33mAcces"]
|
||||
[129.336074, "o", "s-Control-Allow-Origin:\u001b[39m \u001b[38;5;245m*\u001b[39m \u001b[13;1H\u001b[38;5;254m\u001b[48;5;240mRaw [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[14;1H\u001b[49m\u001b[38;5;245mWeather report: Dunedin\u001b[39m \u001b[15;1H \u001b[16;1H\u001b[38;5;245m \\x1b[38;5;226m _`/\"\"\\x1b[38;5;250m.-. \\x1b[0m Patchy rain possible\u001b[39m \u001b[17;1H\u001b[38;5;245m \\x1b[38;5;226m ,\\\\_\\x1b[38;5;250m( ). \\x1b[0m \\x1b[38;5;047m7\\x1b[0m..\\x1b[38;5;046m8\\x1b[0m \\xc2\\xb0C\\x1b[0m \u001b[18;1H \u001b[39m \u001b[19;1H\u001b[38"]
|
||||
[129.336347, "o", ";5;245m \\x1b[38;5;226m /\\x1b[38;5;250m(___(__) \\x1b[0m \\x1b[1m\\xe2\\x86\\x98\\x1b[0m \\x1b[38;5;190m10\\x1b[0m km/h\\x1b[0m \u001b[39m \u001b[20;1H\u001b[38;5;245m \\x1b[38;5;111m \\xe2\\x80\\x98 \\xe2\\x80\\x98 \\xe2\\x80\\x98 \\xe2\\x80\\x98 \\x1b[0m 10 km\\x1b[0m \u001b[39m \u001b[21;1H\u001b[38;5;245m \\x1b[38;5;111m \\xe2\\x80\\x98 \\xe2\\x80\\x98 \\xe2\\x80\\x98 \\xe2\\x80\\x98 \\x1b[0m 0.1 mm\\x1b[0m \u001b[39m \u001b[22;1H \u001b[23;1H \u001b[23;120H"]
|
||||
[129.555172, "o", "\u001b[3;1H"]
|
||||
[129.752844, "o", "\u001b[3B\u001b[38;5;254m\u001b[48;5;240m Request \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[7;1H\u001b[49m\u001b[38;5;33mHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m \u001b[8;1H\u001b[38;5;33mUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m \u001b[9;1H\u001b[38;5;33mAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m \u001b[10;1H\u001b[38;5;33mProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[11;1H\u001b[38;5;254m\u001b[48;5;240mQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;2"]
|
||||
[129.753169, "o", "40m:auto]\u001b[12;1H\u001b[49m\u001b[38;5;33m0: \u001b[39m \u001b[13;1H \u001b[14;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H "]
|
||||
[129.753451, "o", " \u001b[21;1H \u001b[21;120H"]
|
||||
[130.056542, "o", "\u001b[3;1H"]
|
||||
[131.914713, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:34:26\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;245mhttp://wttr.in/Dunedin?0\u001b[39m \u001b[5;1H \u001b[38;5;64m←\u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;64mOK\u001b[39m \u001b[38;5;245mtext/plain\u001b[39m \u001b[38;5;47m386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m "]
|
||||
[131.914818, "o", " \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m \u001b[13;1H \u001b[14;1H "]
|
||||
[131.915145, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[131.915406, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[131.91576, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[131.919362, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Press `q` to exit the current view. \u001b[m\u000f\u001b[3;1H"]
|
||||
[134.713807, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:34:26\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;245mhttp://wttr.in/Dunedin?0\u001b[39m \u001b[5;1H \u001b[38;5;64m←\u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;64mOK\u001b[39m \u001b[38;5;245mtext/plain\u001b[39m \u001b[38;5;47m386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m "]
|
||||
[134.71392, "o", " \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m \u001b[13;1H \u001b[14;1H "]
|
||||
[134.714221, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[134.714333, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[134.714667, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[135.24914, "o", "\u001b[38;5;254m\u001b[48;5;240mFlows \u001b[4;1H\u001b[49m\u001b[38;5;245m>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H \u001b[7;1H "]
|
||||
[135.249243, "o", " \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[12;120H"]
|
||||
[135.383723, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[135.383829, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[135.384009, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[135.38409, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[135.384344, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[12;120H"]
|
||||
[135.388689, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Press `?` to get a list of all available keyboard shortcuts. \u001b[m\u000f\u001b[12;120H"]
|
||||
[135.572481, "o", "\u001b[3;1H"]
|
||||
[140.186695, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[140.186995, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[140.187307, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[140.187372, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[140.18755, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[140.729531, "o", "\u001b[38;5;254m\u001b[48;5;240mHelp \u001b[4;1H Key Bindings \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Filter Expressions \u001b[5;1H\u001b[49m\u001b[38;5;33mCommon Keybindings\u001b[39m \u001b[6;1H\u001b[38;5;33m:\u001b[39m \u001b[38;5;245mCommand prompt\u001b[39m \u001b[7;1H\u001b[38;5;33mE\u001b[39m \u001b[38;5;245mView event log\u001b[39m \u001b[8;1H\u001b[38;5;33mO\u001b[39m \u001b[38;5;245mView options\u001b[39m \u001b[9;1H\u001b[38;5;33menter\u001b[39m \u001b[38;5;245mSelect\u001b[39m "]
|
||||
[140.729637, "o", " \u001b[10;1H\u001b[38;5;33mq\u001b[39m \u001b[38;5;245mExit the current view\u001b[39m \u001b[11;1H\u001b[38;5;33mtab\u001b[39m \u001b[38;5;245mNext\u001b[39m \u001b[13;1H\u001b[38;5;33mKeybindings for this view\u001b[39m \u001b[14;1H\u001b[38;5;33mA\u001b[39m \u001b[38;5;245mResume all intercepted flows\u001b[39m \u001b[15;1H\u001b[38;5;33mD\u001b[39m \u001b[38;5;245mDuplicate flow\u001b[39m \u001b[16;1H\u001b[38;5;33mF\u001b[39m \u001b[38;5;245mSet focus follow\u001b[39m \u001b[17;1H\u001b[38;5;33mL\u001b[39m \u001b[38;5;245mL"]
|
||||
[140.729861, "o", "oad flows from file\u001b[39m \u001b[18;1H\u001b[38;5;33mM\u001b[39m \u001b[38;5;245mToggle viewing marked flows\u001b[39m \u001b[19;1H\u001b[38;5;33mS\u001b[39m \u001b[38;5;245mStart server replay\u001b[39m \u001b[20;1H\u001b[38;5;33mU\u001b[39m \u001b[38;5;245mUn-set all marks\u001b[39m \u001b[21;1H\u001b[38;5;33mV\u001b[39m \u001b[38;5;245mRevert changes to this flow\u001b[39m \u001b[22;1H\u001b[38;5;33mX\u001b[39m \u001b[38;5;245mKill this flow\u001b[39m \u001b[23;1H\u001b[38;5;33mZ\u001b[39m \u001b[38;5;245mPurge all flows not showing\u001b[39m "]
|
||||
[140.730045, "o", " \u001b[24;1H\u001b[38;5;33ma\u001b[39m \u001b[38;5;245mResume this intercepted flow\u001b[39m \u001b[25;1H\u001b[38;5;33mb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m \u001b[26;1H\u001b[38;5;33md\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m \u001b[27;1H\u001b[38;5;33me\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m \u001b[28;1H\u001b[38;5;33mf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m \u001b[29;1H\u001b[38;5;33mm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m \u001b[30;1H\u001b[38;5;33mn\u001b[39m \u001b[38;5"]
|
||||
[140.73024, "o", ";245mCreate a new flow\u001b[39m \u001b[31;1H\u001b[38;5;33mo\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m \u001b[32;1H\u001b[38;5;33mr\u001b[39m \u001b[38;5;245mReplay this flow\u001b[39m \u001b[33;1H\u001b[38;5;33mv\u001b[39m \u001b[38;5;245mReverse flow list order\u001b[39m \u001b[34;1H\u001b[38;5;33mw\u001b[39m \u001b[38;5;245mSave listed flows to file\u001b[39m \u001b[34;120H"]
|
||||
[141.091679, "o", "\u001b[3;1H"]
|
||||
[142.825672, "o", "\u001b[2B\u001b[38;5;33m:\u001b[39m \u001b[38;5;245mCommand prompt\u001b[39m \u001b[6;1H\u001b[38;5;33mE\u001b[39m \u001b[38;5;245mView event log\u001b[39m \u001b[7;1H\u001b[38;5;33mO\u001b[39m \u001b[38;5;245mView options\u001b[39m \u001b[8;1H\u001b[38;5;33menter\u001b[39m \u001b[38;5;245mSelect\u001b[39m \u001b[9;1H\u001b[38;5;33mq\u001b[39m \u001b[38;5;245mExit the current view\u001b[39m \u001b[10;1H\u001b[38;5;33mtab\u001b[39m \u001b[38;5;245mNext\u001b[39m \u001b[11;1H "]
|
||||
[142.82577, "o", " \u001b[12;1H\u001b[38;5;33mKeybindings for this view\u001b[39m \u001b[13;1H\u001b[38;5;33mA\u001b[39m \u001b[38;5;245mResume all intercepted flows\u001b[39m \u001b[14;1H\u001b[38;5;33mD\u001b[39m \u001b[38;5;245mDuplicate flow\u001b[39m \u001b[15;1H\u001b[38;5;33mF\u001b[39m \u001b[38;5;245mSet focus follow\u001b[39m \u001b[16;1H\u001b[38;5;33mL\u001b[39m \u001b[38;5;245mLoad flows from file\u001b[39m \u001b[17;1H\u001b[38;5;33mM\u001b[39m \u001b[38;5;245mToggle viewing marked flows\u001b[39m \u001b[18;1H\u001b[38;5;33mS\u001b[39m \u001b[38;5;245mStart s"]
|
||||
[142.825979, "o", "erver replay\u001b[39m \u001b[19;1H\u001b[38;5;33mU\u001b[39m \u001b[38;5;245mUn-set all marks\u001b[39m \u001b[20;1H\u001b[38;5;33mV\u001b[39m \u001b[38;5;245mRevert changes to this flow\u001b[39m \u001b[21;1H\u001b[38;5;33mX\u001b[39m \u001b[38;5;245mKill this flow\u001b[39m \u001b[22;1H\u001b[38;5;33mZ\u001b[39m \u001b[38;5;245mPurge all flows not showing\u001b[39m \u001b[23;1H\u001b[38;5;33ma\u001b[39m \u001b[38;5;245mResume this intercepted flow\u001b[39m \u001b[24;1H\u001b[38;5;33mb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m "]
|
||||
[142.826653, "o", " \u001b[25;1H\u001b[38;5;33md\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m \u001b[26;1H\u001b[38;5;33me\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m \u001b[27;1H\u001b[38;5;33mf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m \u001b[28;1H\u001b[38;5;33mm\u001b[m\u000f \u001b[38;5;245mToggle mark on this flow\u001b[39m \u001b[29;1H\u001b[38;5;33mn\u001b[39m \u001b[38;5;245mCreate a new flow\u001b[39m \u001b[30;1H\u001b[38;5;33mo\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m \u001b[31;1H\u001b[38;5;33mr\u001b[39m \u001b[38;5;245mRe"]
|
||||
[142.826962, "o", "play this flow\u001b[39m \u001b[32;1H\u001b[38;5;33mv\u001b[39m \u001b[38;5;245mReverse flow list order\u001b[39m \u001b[33;1H\u001b[38;5;33mw\u001b[39m \u001b[38;5;245mSave listed flows to file\u001b[39m \u001b[34;1H\u001b[38;5;33mz\u001b[39m \u001b[38;5;245mClear flow list\u001b[39m \u001b[34;120H"]
|
||||
[143.096004, "o", "\u001b[3;1H"]
|
||||
[143.629141, "o", "\u001b[2B\u001b[38;5;33mE\u001b[39m \u001b[38;5;245mView event log\u001b[39m \u001b[6;1H\u001b[38;5;33mO\u001b[39m \u001b[38;5;245mView options\u001b[39m \u001b[7;1H\u001b[38;5;33menter\u001b[39m \u001b[38;5;245mSelect\u001b[39m \u001b[8;1H\u001b[38;5;33mq\u001b[39m \u001b[38;5;245mExit the current view\u001b[39m \u001b[9;1H\u001b[38;5;33mtab\u001b[39m \u001b[38;5;245mNext\u001b[39m \u001b[10;1H \u001b[11;1H\u001b[38;5;33mKeybindings for this view\u001b[39m "]
|
||||
[143.629244, "o", " \u001b[12;1H\u001b[38;5;33mA\u001b[39m \u001b[38;5;245mResume all intercepted flows\u001b[39m \u001b[13;1H\u001b[38;5;33mD\u001b[39m \u001b[38;5;245mDuplicate flow\u001b[39m \u001b[14;1H\u001b[38;5;33mF\u001b[39m \u001b[38;5;245mSet focus follow\u001b[39m \u001b[15;1H\u001b[38;5;33mL\u001b[39m \u001b[38;5;245mLoad flows from file\u001b[39m \u001b[16;1H\u001b[38;5;33mM\u001b[39m \u001b[38;5;245mToggle viewing marked flows\u001b[39m \u001b[17;1H\u001b[38;5;33mS\u001b[39m \u001b[38;5;245mStart server replay\u001b[39m \u001b[18;1H\u001b[38;5;33mU\u001b[39m \u001b[38;5;245mUn-set "]
|
||||
[143.62939, "o", "all marks\u001b[39m \u001b[19;1H\u001b[38;5;33mV\u001b[39m \u001b[38;5;245mRevert changes to this flow\u001b[39m \u001b[20;1H\u001b[38;5;33mX\u001b[39m \u001b[38;5;245mKill this flow\u001b[39m \u001b[21;1H\u001b[38;5;33mZ\u001b[39m \u001b[38;5;245mPurge all flows not showing\u001b[39m \u001b[22;1H\u001b[38;5;33ma\u001b[39m \u001b[38;5;245mResume this intercepted flow\u001b[39m \u001b[23;1H\u001b[38;5;33mb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m \u001b[24;1H\u001b[38;5;33md\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m "]
|
||||
[143.629653, "o", " \u001b[25;1H\u001b[38;5;33me\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m \u001b[26;1H\u001b[38;5;33mf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m \u001b[27;1H\u001b[38;5;33mm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m \u001b[28;1H\u001b[38;5;33mn\u001b[m\u000f \u001b[38;5;245mCreate a new flow\u001b[39m \u001b[29;1H\u001b[38;5;33mo\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m \u001b[30;1H\u001b[38;5;33mr\u001b[39m \u001b[38;5;245mReplay this flow\u001b[39m \u001b[31;1H\u001b[38;5;33mv\u001b[39m \u001b[38;5;245mRe"]
|
||||
[143.629863, "o", "verse flow list order\u001b[39m \u001b[32;1H\u001b[38;5;33mw\u001b[39m \u001b[38;5;245mSave listed flows to file\u001b[39m \u001b[33;1H\u001b[38;5;33mz\u001b[39m \u001b[38;5;245mClear flow list\u001b[39m \u001b[34;1H\u001b[38;5;33m|\u001b[39m \u001b[38;5;245mRun a script on this flow\u001b[39m \u001b[34;120H"]
|
||||
[143.88032, "o", "\u001b[5;1H\u001b[38;5;33mO\u001b[39m \u001b[38;5;245mView options\u001b[39m \u001b[6;1H\u001b[38;5;33menter\u001b[39m \u001b[38;5;245mSelect\u001b[39m \u001b[7;1H\u001b[38;5;33mq\u001b[39m \u001b[38;5;245mExit the current view\u001b[39m \u001b[8;1H\u001b[38;5;33mtab\u001b[39m \u001b[38;5;245mNext\u001b[39m \u001b[9;1H \u001b[10;1H\u001b[38;5;33mKeybindings for this view\u001b[39m \u001b[11;1H\u001b[38;5;33mA\u001b[39m \u001b[38;5;245mResume all intercepted flows\u001b[39m "]
|
||||
[143.880425, "o", " \u001b[12;1H\u001b[38;5;33mD\u001b[39m \u001b[38;5;245mDuplicate flow\u001b[39m \u001b[13;1H\u001b[38;5;33mF\u001b[39m \u001b[38;5;245mSet focus follow\u001b[39m \u001b[14;1H\u001b[38;5;33mL\u001b[39m \u001b[38;5;245mLoad flows from file\u001b[39m \u001b[15;1H\u001b[38;5;33mM\u001b[39m \u001b[38;5;245mToggle viewing marked flows\u001b[39m \u001b[16;1H\u001b[38;5;33mS\u001b[39m \u001b[38;5;245mStart server replay\u001b[39m \u001b[17;1H\u001b[38;5;33mU\u001b[39m \u001b[38;5;245mUn-set all marks\u001b[39m \u001b[18;1H\u001b[38;5;33mV\u001b[39m \u001b[38;5;245mRever"]
|
||||
[143.880575, "o", "t changes to this flow\u001b[39m \u001b[19;1H\u001b[38;5;33mX\u001b[39m \u001b[38;5;245mKill this flow\u001b[39m \u001b[20;1H\u001b[38;5;33mZ\u001b[39m \u001b[38;5;245mPurge all flows not showing\u001b[39m \u001b[21;1H\u001b[38;5;33ma\u001b[39m \u001b[38;5;245mResume this intercepted flow\u001b[39m \u001b[22;1H\u001b[38;5;33mb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m \u001b[23;1H\u001b[38;5;33md\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m \u001b[24;1H\u001b[38;5;33me\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m "]
|
||||
[143.880867, "o", " \u001b[25;1H\u001b[38;5;33mf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m \u001b[26;1H\u001b[38;5;33mm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m \u001b[27;1H\u001b[38;5;33mn\u001b[39m \u001b[38;5;245mCreate a new flow\u001b[39m \u001b[28;1H\u001b[38;5;33mo\u001b[m\u000f \u001b[38;5;245mSet flow list order\u001b[39m \u001b[29;1H\u001b[38;5;33mr\u001b[39m \u001b[38;5;245mReplay this flow\u001b[39m \u001b[30;1H\u001b[38;5;33mv\u001b[39m \u001b[38;5;245mReverse flow list order\u001b[39m \u001b[31;1H\u001b[38;5;33mw\u001b[39m \u001b[38;5;245m"]
|
||||
[143.88111, "o", "Save listed flows to file\u001b[39m \u001b[32;1H\u001b[38;5;33mz\u001b[39m \u001b[38;5;245mClear flow list\u001b[39m \u001b[33;1H\u001b[38;5;33m|\u001b[39m \u001b[38;5;245mRun a script on this flow\u001b[39m \u001b[34;1H\u001b[38;5;33mctrl l\u001b[39m \u001b[38;5;245mSend cuts to clipboard\u001b[39m \u001b[34;120H"]
|
||||
[144.09739, "o", "\u001b[3;1H"]
|
||||
[144.233492, "o", "\u001b[2B\u001b[38;5;33menter\u001b[39m \u001b[38;5;245mSelect\u001b[39m \u001b[6;1H\u001b[38;5;33mq\u001b[39m \u001b[38;5;245mExit the current view\u001b[39m \u001b[7;1H\u001b[38;5;33mtab\u001b[39m \u001b[38;5;245mNext\u001b[39m \u001b[8;1H \u001b[9;1H\u001b[38;5;33mKeybindings for this view\u001b[39m \u001b[10;1H\u001b[38;5;33mA\u001b[39m \u001b[38;5;245mResume all intercepted flows\u001b[39m \u001b[11;1H\u001b[38;5;33mD\u001b[39m \u001b[38;5;245mDuplicate flow\u001b[39m "]
|
||||
[144.233613, "o", " \u001b[12;1H\u001b[38;5;33mF\u001b[39m \u001b[38;5;245mSet focus follow\u001b[39m \u001b[13;1H\u001b[38;5;33mL\u001b[39m \u001b[38;5;245mLoad flows from file\u001b[39m \u001b[14;1H\u001b[38;5;33mM\u001b[39m \u001b[38;5;245mToggle viewing marked flows\u001b[39m \u001b[15;1H\u001b[38;5;33mS\u001b[39m \u001b[38;5;245mStart server replay\u001b[39m \u001b[16;1H\u001b[38;5;33mU\u001b[39m \u001b[38;5;245mUn-set all marks\u001b[39m \u001b[17;1H\u001b[38;5;33mV\u001b[39m \u001b[38;5;245mRevert changes to this flow\u001b[39m \u001b[18;1H\u001b[38;5;33mX\u001b[39m \u001b[38;5;245mKill th"]
|
||||
[144.233941, "o", "is flow\u001b[39m \u001b[19;1H\u001b[38;5;33mZ\u001b[39m \u001b[38;5;245mPurge all flows not showing\u001b[39m \u001b[20;1H\u001b[38;5;33ma\u001b[39m \u001b[38;5;245mResume this intercepted flow\u001b[39m \u001b[21;1H\u001b[38;5;33mb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m \u001b[22;1H\u001b[38;5;33md\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m \u001b[23;1H\u001b[38;5;33me\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m \u001b[24;1H\u001b[38;5;33mf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m "]
|
||||
[144.23426, "o", " \u001b[25;1H\u001b[38;5;33mm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m \u001b[26;1H\u001b[38;5;33mn\u001b[39m \u001b[38;5;245mCreate a new flow\u001b[39m \u001b[27;1H\u001b[38;5;33mo\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m \u001b[28;1H\u001b[38;5;33mr\u001b[m\u000f \u001b[38;5;245mReplay this flow\u001b[39m \u001b[29;1H\u001b[38;5;33mv\u001b[39m \u001b[38;5;245mReverse flow list order\u001b[39m \u001b[30;1H\u001b[38;5;33mw\u001b[39m \u001b[38;5;245mSave listed flows to file\u001b[39m \u001b[31;1H\u001b[38;5;33mz\u001b[39m \u001b[38;5;245mCl"]
|
||||
[144.234571, "o", "ear flow list\u001b[39m \u001b[32;1H\u001b[38;5;33m|\u001b[39m \u001b[38;5;245mRun a script on this flow\u001b[39m \u001b[33;1H\u001b[38;5;33mctrl l\u001b[39m \u001b[38;5;245mSend cuts to clipboard\u001b[39m \u001b[34;1H \u001b[34;120H"]
|
||||
[144.358211, "o", "\u001b[5;1H\u001b[38;5;33mq\u001b[39m \u001b[38;5;245mExit the current view\u001b[39m \u001b[6;1H\u001b[38;5;33mtab\u001b[39m \u001b[38;5;245mNext\u001b[39m \u001b[7;1H \u001b[8;1H\u001b[38;5;33mKeybindings for this view\u001b[39m \u001b[9;1H\u001b[38;5;33mA\u001b[39m \u001b[38;5;245mResume all intercepted flows\u001b[39m \u001b[10;1H\u001b[38;5;33mD\u001b[39m \u001b[38;5;245mDuplicate flow\u001b[39m \u001b[11;1H\u001b[38;5;33mF\u001b[39m \u001b[38;5;245mSet focus follow\u001b[39m "]
|
||||
[144.358575, "o", " \u001b[12;1H\u001b[38;5;33mL\u001b[39m \u001b[38;5;245mLoad flows from file\u001b[39m \u001b[13;1H\u001b[38;5;33mM\u001b[39m \u001b[38;5;245mToggle viewing marked flows\u001b[39m \u001b[14;1H\u001b[38;5;33mS\u001b[39m \u001b[38;5;245mStart server replay\u001b[39m \u001b[15;1H\u001b[38;5;33mU\u001b[39m \u001b[38;5;245mUn-set all marks\u001b[39m \u001b[16;1H\u001b[38;5;33mV\u001b[39m \u001b[38;5;245mRevert changes to this flow\u001b[39m \u001b[17;1H\u001b[38;5;33mX\u001b[39m \u001b[38;5;245mKill this flow\u001b[39m \u001b[18;1H\u001b[38;5;33mZ\u001b[39m \u001b[38;5;245mPurge"]
|
||||
[144.358845, "o", " all flows not showing\u001b[39m \u001b[19;1H\u001b[38;5;33ma\u001b[39m \u001b[38;5;245mResume this intercepted flow\u001b[39m \u001b[20;1H\u001b[38;5;33mb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m \u001b[21;1H\u001b[38;5;33md\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m \u001b[22;1H\u001b[38;5;33me\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m \u001b[23;1H\u001b[38;5;33mf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m \u001b[24;1H\u001b[38;5;33mm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m "]
|
||||
[144.359239, "o", " \u001b[25;1H\u001b[38;5;33mn\u001b[39m \u001b[38;5;245mCreate a new flow\u001b[39m \u001b[26;1H\u001b[38;5;33mo\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m \u001b[27;1H\u001b[38;5;33mr\u001b[39m \u001b[38;5;245mReplay this flow\u001b[39m \u001b[28;1H\u001b[38;5;33mv\u001b[m\u000f \u001b[38;5;245mReverse flow list order\u001b[39m \u001b[29;1H\u001b[38;5;33mw\u001b[39m \u001b[38;5;245mSave listed flows to file\u001b[39m \u001b[30;1H\u001b[38;5;33mz\u001b[39m \u001b[38;5;245mClear flow list\u001b[39m \u001b[31;1H\u001b[38;5;33m|\u001b[39m \u001b[38;5;245m"]
|
||||
[144.359494, "o", "Run a script on this flow\u001b[39m \u001b[32;1H\u001b[38;5;33mctrl l\u001b[39m \u001b[38;5;245mSend cuts to clipboard\u001b[39m \u001b[33;1H \u001b[34;1H\u001b[38;5;33mGlobal Keybindings\u001b[39m \u001b[34;120H"]
|
||||
[144.602226, "o", "\u001b[3;1H"]
|
||||
[144.896173, "o", "\u001b[2B\u001b[38;5;33mtab\u001b[39m \u001b[38;5;245mNext\u001b[39m \u001b[6;1H \u001b[7;1H\u001b[38;5;33mKeybindings for this view\u001b[39m \u001b[8;1H\u001b[38;5;33mA\u001b[39m \u001b[38;5;245mResume all intercepted flows\u001b[39m \u001b[9;1H\u001b[38;5;33mD\u001b[39m \u001b[38;5;245mDuplicate flow\u001b[39m \u001b[10;1H\u001b[38;5;33mF\u001b[39m \u001b[38;5;245mSet focus follow\u001b[39m \u001b[11;1H\u001b[38;5;33mL\u001b[39m \u001b[38;5;245mLoad flows from file\u001b[39m "]
|
||||
[144.896384, "o", " \u001b[12;1H\u001b[38;5;33mM\u001b[39m \u001b[38;5;245mToggle viewing marked flows\u001b[39m \u001b[13;1H\u001b[38;5;33mS\u001b[39m \u001b[38;5;245mStart server replay\u001b[39m \u001b[14;1H\u001b[38;5;33mU\u001b[39m \u001b[38;5;245mUn-set all marks\u001b[39m \u001b[15;1H\u001b[38;5;33mV\u001b[39m \u001b[38;5;245mRevert changes to this flow\u001b[39m \u001b[16;1H\u001b[38;5;33mX\u001b[39m \u001b[38;5;245mKill this flow\u001b[39m \u001b[17;1H\u001b[38;5;33mZ\u001b[39m \u001b[38;5;245mPurge all flows not showing\u001b[39m \u001b[18;1H\u001b[38;5;33ma\u001b[39m \u001b[38;5;245mResume "]
|
||||
[144.896579, "o", "this intercepted flow\u001b[39m \u001b[19;1H\u001b[38;5;33mb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m \u001b[20;1H\u001b[38;5;33md\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m \u001b[21;1H\u001b[38;5;33me\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m \u001b[22;1H\u001b[38;5;33mf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m \u001b[23;1H\u001b[38;5;33mm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m \u001b[24;1H\u001b[38;5;33mn\u001b[39m \u001b[38;5;245mCreate a new flow\u001b[39m "]
|
||||
[144.896807, "o", " \u001b[25;1H\u001b[38;5;33mo\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m \u001b[26;1H\u001b[38;5;33mr\u001b[39m \u001b[38;5;245mReplay this flow\u001b[39m \u001b[27;1H\u001b[38;5;33mv\u001b[39m \u001b[38;5;245mReverse flow list order\u001b[39m \u001b[28;1H\u001b[38;5;33mw\u001b[m\u000f \u001b[38;5;245mSave listed flows to file\u001b[39m \u001b[29;1H\u001b[38;5;33mz\u001b[39m \u001b[38;5;245mClear flow list\u001b[39m \u001b[30;1H\u001b[38;5;33m|\u001b[39m \u001b[38;5;245mRun a script on this flow\u001b[39m \u001b[31;1H\u001b[38;5;33mctrl l\u001b[39m \u001b[38;5;245mSe"]
|
||||
[144.89701, "o", "nd cuts to clipboard\u001b[39m \u001b[32;1H \u001b[33;1H\u001b[38;5;33mGlobal Keybindings\u001b[39m \u001b[34;1H\u001b[38;5;33m-\u001b[39m \u001b[38;5;245mCycle to next layout\u001b[39m \u001b[34;120H"]
|
||||
[145.102568, "o", "\u001b[3;1H"]
|
||||
[145.136534, "o", "\u001b[2B \u001b[6;1H\u001b[38;5;33mKeybindings for this view\u001b[39m \u001b[7;1H\u001b[38;5;33mA\u001b[39m \u001b[38;5;245mResume all intercepted flows\u001b[39m \u001b[8;1H\u001b[38;5;33mD\u001b[39m \u001b[38;5;245mDuplicate flow\u001b[39m \u001b[9;1H\u001b[38;5;33mF\u001b[39m \u001b[38;5;245mSet focus follow\u001b[39m \u001b[10;1H\u001b[38;5;33mL\u001b[39m \u001b[38;5;245mLoad flows from file\u001b[39m \u001b[11;1H\u001b[38;5;33mM\u001b[39m \u001b[38;5;245mToggle viewing marked flows\u001b[39m "]
|
||||
[145.136639, "o", " \u001b[12;1H\u001b[38;5;33mS\u001b[39m \u001b[38;5;245mStart server replay\u001b[39m \u001b[13;1H\u001b[38;5;33mU\u001b[39m \u001b[38;5;245mUn-set all marks\u001b[39m \u001b[14;1H\u001b[38;5;33mV\u001b[39m \u001b[38;5;245mRevert changes to this flow\u001b[39m \u001b[15;1H\u001b[38;5;33mX\u001b[39m \u001b[38;5;245mKill this flow\u001b[39m \u001b[16;1H\u001b[38;5;33mZ\u001b[39m \u001b[38;5;245mPurge all flows not showing\u001b[39m \u001b[17;1H\u001b[38;5;33ma\u001b[39m \u001b[38;5;245mResume this intercepted flow\u001b[39m \u001b[18;1H\u001b[38;5;33mb\u001b[39m \u001b[38;5;245mSave re"]
|
||||
[145.136671, "o", "sponse body to file\u001b[39m \u001b[19;1H\u001b[38;5;33md\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m \u001b[20;1H\u001b[38;5;33me\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m \u001b[21;1H\u001b[38;5;33mf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m \u001b[22;1H\u001b[38;5;33mm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m \u001b[23;1H\u001b[38;5;33mn\u001b[39m \u001b[38;5;245mCreate a new flow\u001b[39m \u001b[24;1H\u001b[38;5;33mo\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m "]
|
||||
[145.136912, "o", " \u001b[25;1H\u001b[38;5;33mr\u001b[39m \u001b[38;5;245mReplay this flow\u001b[39m \u001b[26;1H\u001b[38;5;33mv\u001b[39m \u001b[38;5;245mReverse flow list order\u001b[39m \u001b[27;1H\u001b[38;5;33mw\u001b[39m \u001b[38;5;245mSave listed flows to file\u001b[39m \u001b[28;1H\u001b[38;5;33mz\u001b[m\u000f \u001b[38;5;245mClear flow list\u001b[39m \u001b[29;1H\u001b[38;5;33m|\u001b[39m \u001b[38;5;245mRun a script on this flow\u001b[39m \u001b[30;1H\u001b[38;5;33mctrl l\u001b[39m \u001b[38;5;245mSend cuts to clipboard\u001b[39m \u001b[31;1H "]
|
||||
[145.13713, "o", " \u001b[32;1H\u001b[38;5;33mGlobal Keybindings\u001b[39m \u001b[33;1H\u001b[38;5;33m-\u001b[39m \u001b[38;5;245mCycle to next layout\u001b[39m \u001b[34;1H\u001b[38;5;33m:\u001b[39m \u001b[38;5;245mCommand prompt\u001b[39m \u001b[34;120H"]
|
||||
[145.320724, "o", "\u001b[5;1H\u001b[38;5;33mKeybindings for this view\u001b[39m \u001b[6;1H\u001b[38;5;33mA\u001b[39m \u001b[38;5;245mResume all intercepted flows\u001b[39m \u001b[7;1H\u001b[38;5;33mD\u001b[39m \u001b[38;5;245mDuplicate flow\u001b[39m \u001b[8;1H\u001b[38;5;33mF\u001b[39m \u001b[38;5;245mSet focus follow\u001b[39m \u001b[9;1H\u001b[38;5;33mL\u001b[39m \u001b[38;5;245mLoad flows from file\u001b[39m \u001b[10;1H\u001b[38;5;33mM\u001b[39m \u001b[38;5;245mToggle viewing marked flows\u001b[39m \u001b[11;1H\u001b[38;5;33mS\u001b[39m \u001b[38;5;245mStart server replay\u001b[39m "]
|
||||
[145.320974, "o", " \u001b[12;1H\u001b[38;5;33mU\u001b[39m \u001b[38;5;245mUn-set all marks\u001b[39m \u001b[13;1H\u001b[38;5;33mV\u001b[39m \u001b[38;5;245mRevert changes to this flow\u001b[39m \u001b[14;1H\u001b[38;5;33mX\u001b[39m \u001b[38;5;245mKill this flow\u001b[39m \u001b[15;1H\u001b[38;5;33mZ\u001b[39m \u001b[38;5;245mPurge all flows not showing\u001b[39m \u001b[16;1H\u001b[38;5;33ma\u001b[39m \u001b[38;5;245mResume this intercepted flow\u001b[39m \u001b[17;1H\u001b[38;5;33mb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m \u001b[18;1H\u001b[38;5;3"]
|
||||
[145.321061, "o", "3md\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m \u001b[19;1H\u001b[38;5;33me\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m \u001b[20;1H\u001b[38;5;33mf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m \u001b[21;1H\u001b[38;5;33mm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m \u001b[22;1H\u001b[38;5;33mn\u001b[39m \u001b[38;5;245mCreate a new flow\u001b[39m \u001b[23;1H\u001b[38;5;33mo\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m \u001b[24;1H\u001b[38;5;33mr\u001b[39m \u001b[38;5;245mReplay this flow\u001b[39m "]
|
||||
[145.321198, "o", " \u001b[25;1H\u001b[38;5;33mv\u001b[39m \u001b[38;5;245mReverse flow list order\u001b[39m \u001b[26;1H\u001b[38;5;33mw\u001b[39m \u001b[38;5;245mSave listed flows to file\u001b[39m \u001b[27;1H\u001b[38;5;33mz\u001b[39m \u001b[38;5;245mClear flow list\u001b[39m \u001b[28;1H\u001b[38;5;33m|\u001b[39m \u001b[38;5;245mRun a script on this flow\u001b[39m \u001b[29;1H\u001b[38;5;33mctrl l\u001b[39m \u001b[38;5;245mSend cuts to clipboard\u001b[39m \u001b[30;1H \u001b[31;1H\u001b[38;5;33mGlobal Keybindings\u001b[39m"]
|
||||
[145.321507, "o", " \u001b[32;1H\u001b[38;5;33m-\u001b[39m \u001b[38;5;245mCycle to next layout\u001b[39m \u001b[33;1H\u001b[38;5;33m:\u001b[39m \u001b[38;5;245mCommand prompt\u001b[39m \u001b[34;1H\u001b[38;5;33m?\u001b[39m \u001b[38;5;245mView help\u001b[39m \u001b[34;120H"]
|
||||
[145.601451, "o", "\u001b[3;1H"]
|
||||
[145.795883, "o", "\u001b[2B\u001b[38;5;33mA\u001b[39m \u001b[38;5;245mResume all intercepted flows\u001b[39m \u001b[6;1H\u001b[38;5;33mD\u001b[39m \u001b[38;5;245mDuplicate flow\u001b[39m \u001b[7;1H\u001b[38;5;33mF\u001b[39m \u001b[38;5;245mSet focus follow\u001b[39m \u001b[8;1H\u001b[38;5;33mL\u001b[39m \u001b[38;5;245mLoad flows from file\u001b[39m \u001b[9;1H\u001b[38;5;33mM\u001b[39m \u001b[38;5;245mToggle viewing marked flows\u001b[39m \u001b[10;1H\u001b[38;5;33mS\u001b[39m \u001b[38;5;245mStart server replay\u001b[39m \u001b[11;1H\u001b[38;5;33mU\u001b[39m \u001b[38;5;245mUn-set all marks\u001b[39m "]
|
||||
[145.795989, "o", " \u001b[12;1H\u001b[38;5;33mV\u001b[39m \u001b[38;5;245mRevert changes to this flow\u001b[39m \u001b[13;1H\u001b[38;5;33mX\u001b[39m \u001b[38;5;245mKill this flow\u001b[39m \u001b[14;1H\u001b[38;5;33mZ\u001b[39m \u001b[38;5;245mPurge all flows not showing\u001b[39m \u001b[15;1H\u001b[38;5;33ma\u001b[39m \u001b[38;5;245mResume this intercepted flow\u001b[39m \u001b[16;1H\u001b[38;5;33mb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m \u001b[17;1H\u001b[38;5;33md\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m \u001b"]
|
||||
[145.796193, "o", "[18;1H\u001b[38;5;33me\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m \u001b[19;1H\u001b[38;5;33mf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m \u001b[20;1H\u001b[38;5;33mm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m \u001b[21;1H\u001b[38;5;33mn\u001b[39m \u001b[38;5;245mCreate a new flow\u001b[39m \u001b[22;1H\u001b[38;5;33mo\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m \u001b[23;1H\u001b[38;5;33mr\u001b[39m \u001b[38;5;245mReplay this flow\u001b[39m \u001b[24;1H\u001b[38;5;33mv\u001b[39m \u001b[38;5;245mReverse flow list order\u001b[39m "]
|
||||
[145.796419, "o", " \u001b[25;1H\u001b[38;5;33mw\u001b[39m \u001b[38;5;245mSave listed flows to file\u001b[39m \u001b[26;1H\u001b[38;5;33mz\u001b[39m \u001b[38;5;245mClear flow list\u001b[39m \u001b[27;1H\u001b[38;5;33m|\u001b[39m \u001b[38;5;245mRun a script on this flow\u001b[39m \u001b[28;1H\u001b[38;5;33mctrl l\u001b[39m \u001b[38;5;245mSend cuts to clipboard\u001b[39m \u001b[29;1H \u001b[30;1H\u001b[38;5;33mGlobal Keybindings\u001b[39m \u001b[31;1H\u001b[38;5;33m-\u001b[39m \u001b[38;5;2"]
|
||||
[145.796715, "o", "45mCycle to next layout\u001b[39m \u001b[32;1H\u001b[38;5;33m:\u001b[39m \u001b[38;5;245mCommand prompt\u001b[39m \u001b[33;1H\u001b[38;5;33m?\u001b[39m \u001b[38;5;245mView help\u001b[39m \u001b[34;1H\u001b[38;5;33mB\u001b[39m \u001b[38;5;245mStart an attached browser\u001b[39m \u001b[34;120H"]
|
||||
[146.105088, "o", "\u001b[3;1H"]
|
||||
[146.119144, "o", "\u001b[2B\u001b[38;5;33mD\u001b[39m \u001b[38;5;245mDuplicate flow\u001b[39m \u001b[6;1H\u001b[38;5;33mF\u001b[39m \u001b[38;5;245mSet focus follow\u001b[39m \u001b[7;1H\u001b[38;5;33mL\u001b[39m \u001b[38;5;245mLoad flows from file\u001b[39m \u001b[8;1H\u001b[38;5;33mM\u001b[39m \u001b[38;5;245mToggle viewing marked flows\u001b[39m \u001b[9;1H\u001b[38;5;33mS\u001b[39m \u001b[38;5;245mStart server replay\u001b[39m \u001b[10;1H\u001b[38;5;33mU\u001b[39m \u001b[38;5;245mUn-set all marks\u001b[39m \u001b[11;1H\u001b[38;5;33mV\u001b[39m \u001b[38;5;245mRevert changes to this flow\u001b[39m "]
|
||||
[146.11947, "o", " \u001b[12;1H\u001b[38;5;33mX\u001b[39m \u001b[38;5;245mKill this flow\u001b[39m \u001b[13;1H\u001b[38;5;33mZ\u001b[39m \u001b[38;5;245mPurge all flows not showing\u001b[39m \u001b[14;1H\u001b[38;5;33ma\u001b[39m \u001b[38;5;245mResume this intercepted flow\u001b[39m \u001b[15;1H\u001b[38;5;33mb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m \u001b[16;1H\u001b[38;5;33md\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m \u001b[17;1H\u001b[38;5;33me\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m \u001b"]
|
||||
[146.119755, "o", "[18;1H\u001b[38;5;33mf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m \u001b[19;1H\u001b[38;5;33mm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m \u001b[20;1H\u001b[38;5;33mn\u001b[39m \u001b[38;5;245mCreate a new flow\u001b[39m \u001b[21;1H\u001b[38;5;33mo\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m \u001b[22;1H\u001b[38;5;33mr\u001b[39m \u001b[38;5;245mReplay this flow\u001b[39m \u001b[23;1H\u001b[38;5;33mv\u001b[39m \u001b[38;5;245mReverse flow list order\u001b[39m \u001b[24;1H\u001b[38;5;33mw\u001b[39m \u001b[38;5;245mSave listed flows to file\u001b[39m "]
|
||||
[146.120248, "o", " \u001b[25;1H\u001b[38;5;33mz\u001b[39m \u001b[38;5;245mClear flow list\u001b[39m \u001b[26;1H\u001b[38;5;33m|\u001b[39m \u001b[38;5;245mRun a script on this flow\u001b[39m \u001b[27;1H\u001b[38;5;33mctrl l\u001b[39m \u001b[38;5;245mSend cuts to clipboard\u001b[39m \u001b[28;1H \u001b[29;1H\u001b[38;5;33mGlobal Keybindings\u001b[39m \u001b[30;1H\u001b[38;5;33m-\u001b[39m \u001b[38;5;245mCycle to next layout\u001b[39m \u001b[31;1H\u001b[38;5;33m:\u001b[39m \u001b[38;5;2"]
|
||||
[146.120521, "o", "45mCommand prompt\u001b[39m \u001b[32;1H\u001b[38;5;33m?\u001b[39m \u001b[38;5;245mView help\u001b[39m \u001b[33;1H\u001b[38;5;33mB\u001b[39m \u001b[38;5;245mStart an attached browser\u001b[39m \u001b[34;1H\u001b[38;5;33mC\u001b[39m \u001b[38;5;245mView commands\u001b[39m \u001b[34;120H"]
|
||||
[146.263845, "o", "\u001b[5;1H\u001b[38;5;33mF\u001b[39m \u001b[38;5;245mSet focus follow\u001b[39m \u001b[6;1H\u001b[38;5;33mL\u001b[39m \u001b[38;5;245mLoad flows from file\u001b[39m \u001b[7;1H\u001b[38;5;33mM\u001b[39m \u001b[38;5;245mToggle viewing marked flows\u001b[39m \u001b[8;1H\u001b[38;5;33mS\u001b[39m \u001b[38;5;245mStart server replay\u001b[39m \u001b[9;1H\u001b[38;5;33mU\u001b[39m \u001b[38;5;245mUn-set all marks\u001b[39m \u001b[10;1H\u001b[38;5;33mV\u001b[39m \u001b[38;5;245mRevert changes to this flow\u001b[39m \u001b[11;1H\u001b[38;5;33mX\u001b[39m \u001b[38;5;245mKill this flow\u001b[39m "]
|
||||
[146.26396, "o", " \u001b[12;1H\u001b[38;5;33mZ\u001b[39m \u001b[38;5;245mPurge all flows not showing\u001b[39m \u001b[13;1H\u001b[38;5;33ma\u001b[39m \u001b[38;5;245mResume this intercepted flow\u001b[39m \u001b[14;1H\u001b[38;5;33mb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m \u001b[15;1H\u001b[38;5;33md\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m \u001b[16;1H\u001b[38;5;33me\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m \u001b[17;1H\u001b[38;5;33mf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m "]
|
||||
[146.264276, "o", " \u001b[18;1H\u001b[38;5;33mm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m \u001b[19;1H\u001b[38;5;33mn\u001b[39m \u001b[38;5;245mCreate a new flow\u001b[39m \u001b[20;1H\u001b[38;5;33mo\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m \u001b[21;1H\u001b[38;5;33mr\u001b[39m \u001b[38;5;245mReplay this flow\u001b[39m \u001b[22;1H\u001b[38;5;33mv\u001b[39m \u001b[38;5;245mReverse flow list order\u001b[39m \u001b[23;1H\u001b[38;5;33mw\u001b[39m \u001b[38;5;245mSave listed flows to file\u001b[39m \u001b[24;1H\u001b[38;5;33mz\u001b[39m \u001b[38;5;245mClear flow list\u001b[39m "]
|
||||
[146.264495, "o", " \u001b[25;1H\u001b[38;5;33m|\u001b[39m \u001b[38;5;245mRun a script on this flow\u001b[39m \u001b[26;1H\u001b[38;5;33mctrl l\u001b[39m \u001b[38;5;245mSend cuts to clipboard\u001b[39m \u001b[27;1H \u001b[27;120H\r\n\u001b[38;5;33mGlobal Keybindings\u001b[39m \u001b[29;1H\u001b[38;5;33m-\u001b[39m \u001b[38;5;245mCycle to next layout\u001b[39m \u001b[30;1H\u001b[38;5;33m:\u001b[39m \u001b[38;5;245mCommand prompt\u001b[39m \u001b[31;1H\u001b[38;5;33m?\u001b[39m \u001b["]
|
||||
[146.264699, "o", "38;5;245mView help\u001b[39m \u001b[32;1H\u001b[38;5;33mB\u001b[39m \u001b[38;5;245mStart an attached browser\u001b[39m \u001b[33;1H\u001b[38;5;33mC\u001b[39m \u001b[38;5;245mView commands\u001b[39m \u001b[34;1H\u001b[38;5;33mE\u001b[39m \u001b[38;5;245mView event log\u001b[39m \u001b[34;120H"]
|
||||
[146.483922, "o", "\u001b[5;1H\u001b[38;5;33mL\u001b[39m \u001b[38;5;245mLoad flows from file\u001b[39m \u001b[6;1H\u001b[38;5;33mM\u001b[39m \u001b[38;5;245mToggle viewing marked flows\u001b[39m \u001b[7;1H\u001b[38;5;33mS\u001b[39m \u001b[38;5;245mStart server replay\u001b[39m \u001b[8;1H\u001b[38;5;33mU\u001b[39m \u001b[38;5;245mUn-set all marks\u001b[39m \u001b[9;1H\u001b[38;5;33mV\u001b[39m \u001b[38;5;245mRevert changes to this flow\u001b[39m \u001b[10;1H\u001b[38;5;33mX\u001b[39m \u001b[38;5;245mKill this flow\u001b[39m \u001b[11;1H\u001b[38;5;33mZ\u001b[39m \u001b[38;5;245mPurge all flows not showing\u001b[39m "]
|
||||
[146.48403, "o", " \u001b[12;1H\u001b[38;5;33ma\u001b[39m \u001b[38;5;245mResume this intercepted flow\u001b[39m \u001b[13;1H\u001b[38;5;33mb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m \u001b[14;1H\u001b[38;5;33md\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m \u001b[15;1H\u001b[38;5;33me\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m \u001b[16;1H\u001b[38;5;33mf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m \u001b[17;1H\u001b[38;5;33mm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m "]
|
||||
[146.484258, "o", " \u001b[18;1H\u001b[38;5;33mn\u001b[39m \u001b[38;5;245mCreate a new flow\u001b[39m \u001b[19;1H\u001b[38;5;33mo\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m \u001b[20;1H\u001b[38;5;33mr\u001b[39m \u001b[38;5;245mReplay this flow\u001b[39m \u001b[21;1H\u001b[38;5;33mv\u001b[39m \u001b[38;5;245mReverse flow list order\u001b[39m \u001b[22;1H\u001b[38;5;33mw\u001b[39m \u001b[38;5;245mSave listed flows to file\u001b[39m \u001b[23;1H\u001b[38;5;33mz\u001b[39m \u001b[38;5;245mClear flow list\u001b[39m \u001b[24;1H\u001b[38;5;33m|\u001b[39m \u001b[38;5;245mRun a script on this flow\u001b[39m "]
|
||||
[146.48466, "o", " \u001b[25;1H\u001b[38;5;33mctrl l\u001b[39m \u001b[38;5;245mSend cuts to clipboard\u001b[39m \u001b[26;1H \u001b[27;1H\u001b[38;5;33mGlobal Keybindings\u001b[39m \u001b[28;1H\u001b[38;5;33m-\u001b[m\u000f \u001b[38;5;245mCycle to next layout\u001b[39m \u001b[29;1H\u001b[38;5;33m:\u001b[39m \u001b[38;5;245mCommand prompt\u001b[39m \u001b[30;1H\u001b[38;5;33m?\u001b[39m \u001b[38;5;245mView help\u001b[39m \u001b[31;1H\u001b[38;5;33mB\u001b[39m \u001b[38;5;"]
|
||||
[146.484984, "o", "245mStart an attached browser\u001b[39m \u001b[32;1H\u001b[38;5;33mC\u001b[39m \u001b[38;5;245mView commands\u001b[39m \u001b[33;1H\u001b[38;5;33mE\u001b[39m \u001b[38;5;245mView event log\u001b[39m \u001b[34;1H\u001b[38;5;33mG\u001b[39m \u001b[38;5;245mGo to end\u001b[39m \u001b[34;120H"]
|
||||
[146.607063, "o", "\u001b[3;1H"]
|
||||
[146.691289, "o", "\u001b[2B\u001b[38;5;33mM\u001b[39m \u001b[38;5;245mToggle viewing marked flows\u001b[39m \u001b[6;1H\u001b[38;5;33mS\u001b[39m \u001b[38;5;245mStart server replay\u001b[39m \u001b[7;1H\u001b[38;5;33mU\u001b[39m \u001b[38;5;245mUn-set all marks\u001b[39m \u001b[8;1H\u001b[38;5;33mV\u001b[39m \u001b[38;5;245mRevert changes to this flow\u001b[39m \u001b[9;1H\u001b[38;5;33mX\u001b[39m \u001b[38;5;245mKill this flow\u001b[39m \u001b[10;1H\u001b[38;5;33mZ\u001b[39m \u001b[38;5;245mPurge all flows not showing\u001b[39m \u001b[11;1H\u001b[38;5;33ma\u001b[39m \u001b[38;5;245mResume this intercepted flow\u001b[39m "]
|
||||
[146.691387, "o", " \u001b[12;1H\u001b[38;5;33mb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m \u001b[13;1H\u001b[38;5;33md\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m \u001b[14;1H\u001b[38;5;33me\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m \u001b[15;1H\u001b[38;5;33mf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m \u001b[16;1H\u001b[38;5;33mm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m \u001b[17;1H\u001b[38;5;33mn\u001b[39m \u001b[38;5;245mCreate a new flow\u001b[39m \u001b"]
|
||||
[146.691687, "o", "[18;1H\u001b[38;5;33mo\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m \u001b[19;1H\u001b[38;5;33mr\u001b[39m \u001b[38;5;245mReplay this flow\u001b[39m \u001b[20;1H\u001b[38;5;33mv\u001b[39m \u001b[38;5;245mReverse flow list order\u001b[39m \u001b[21;1H\u001b[38;5;33mw\u001b[39m \u001b[38;5;245mSave listed flows to file\u001b[39m \u001b[22;1H\u001b[38;5;33mz\u001b[39m \u001b[38;5;245mClear flow list\u001b[39m \u001b[23;1H\u001b[38;5;33m|\u001b[39m \u001b[38;5;245mRun a script on this flow\u001b[39m \u001b[24;1H\u001b[38;5;33mctrl l\u001b[39m \u001b[38;5;245mSend cuts to clipboard\u001b[39m "]
|
||||
[146.691833, "o", " \u001b[25;1H \u001b[26;1H\u001b[38;5;33mGlobal Keybindings\u001b[39m \u001b[27;1H\u001b[38;5;33m-\u001b[39m \u001b[38;5;245mCycle to next layout\u001b[39m \u001b[28;1H\u001b[38;5;33m:\u001b[m\u000f \u001b[38;5;245mCommand prompt\u001b[39m \u001b[29;1H\u001b[38;5;33m?\u001b[39m \u001b[38;5;245mView help\u001b[39m \u001b[30;1H\u001b[38;5;33mB\u001b[39m \u001b[38;5;245mStart an attached browser\u001b[39m \u001b[31;1H\u001b[38;5;33mC\u001b[39m \u001b[38;5;24"]
|
||||
[146.692053, "o", "5mView commands\u001b[39m \u001b[32;1H\u001b[38;5;33mE\u001b[39m \u001b[38;5;245mView event log\u001b[39m \u001b[33;1H\u001b[38;5;33mG\u001b[39m \u001b[38;5;245mGo to end\u001b[39m \u001b[34;1H\u001b[38;5;33mI\u001b[39m \u001b[38;5;245mToggle intercept\u001b[39m \u001b[34;120H"]
|
||||
[147.032732, "o", "\u001b[5;1H\u001b[38;5;33mS\u001b[39m \u001b[38;5;245mStart server replay\u001b[39m \u001b[6;1H\u001b[38;5;33mU\u001b[39m \u001b[38;5;245mUn-set all marks\u001b[39m \u001b[7;1H\u001b[38;5;33mV\u001b[39m \u001b[38;5;245mRevert changes to this flow\u001b[39m \u001b[8;1H\u001b[38;5;33mX\u001b[39m \u001b[38;5;245mKill this flow\u001b[39m \u001b[9;1H\u001b[38;5;33mZ\u001b[39m \u001b[38;5;245mPurge all flows not showing\u001b[39m \u001b[10;1H\u001b[38;5;33ma\u001b[39m \u001b[38;5;245mResume this intercepted flow\u001b[39m \u001b[11;1H\u001b[38;5;33mb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m "]
|
||||
[147.032832, "o", " \u001b[12;1H\u001b[38;5;33md\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m \u001b[13;1H\u001b[38;5;33me\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m \u001b[14;1H\u001b[38;5;33mf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m \u001b[15;1H\u001b[38;5;33mm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m \u001b[16;1H\u001b[38;5;33mn\u001b[39m \u001b[38;5;245mCreate a new flow\u001b[39m \u001b[17;1H\u001b[38;5;33mo\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m "]
|
||||
[147.033042, "o", " \u001b[18;1H\u001b[38;5;33mr\u001b[39m \u001b[38;5;245mReplay this flow\u001b[39m \u001b[19;1H\u001b[38;5;33mv\u001b[39m \u001b[38;5;245mReverse flow list order\u001b[39m \u001b[20;1H\u001b[38;5;33mw\u001b[39m \u001b[38;5;245mSave listed flows to file\u001b[39m \u001b[21;1H\u001b[38;5;33mz\u001b[39m \u001b[38;5;245mClear flow list\u001b[39m \u001b[22;1H\u001b[38;5;33m|\u001b[39m \u001b[38;5;245mRun a script on this flow\u001b[39m \u001b[23;1H\u001b[38;5;33mctrl l\u001b[39m \u001b[38;5;245mSend cuts to clipboard\u001b[39m \u001b[24;1H "]
|
||||
[147.033309, "o", " \u001b[25;1H\u001b[38;5;33mGlobal Keybindings\u001b[39m \u001b[26;1H\u001b[38;5;33m-\u001b[39m \u001b[38;5;245mCycle to next layout\u001b[39m \u001b[27;1H\u001b[38;5;33m:\u001b[39m \u001b[38;5;245mCommand prompt\u001b[39m \u001b[28;1H\u001b[38;5;33m?\u001b[m\u000f \u001b[38;5;245mView help\u001b[39m \u001b[29;1H\u001b[38;5;33mB\u001b[39m \u001b[38;5;245mStart an attached browser\u001b[39m \u001b[30;1H\u001b[38;5;33mC\u001b[39m \u001b[38;5;245mView commands\u001b[39m \u001b[31;1H\u001b[38;5;33mE\u001b[39m \u001b[38;5;"]
|
||||
[147.033628, "o", "245mView event log\u001b[39m \u001b[32;1H\u001b[38;5;33mG\u001b[39m \u001b[38;5;245mGo to end\u001b[39m \u001b[33;1H\u001b[38;5;33mI\u001b[39m \u001b[38;5;245mToggle intercept\u001b[39m \u001b[34;1H\u001b[38;5;33mK\u001b[39m \u001b[38;5;245mView key bindings\u001b[39m \u001b[34;120H"]
|
||||
[147.108152, "o", "\u001b[3;1H"]
|
||||
[147.306153, "o", "\u001b[2B\u001b[38;5;33mU\u001b[39m \u001b[38;5;245mUn-set all marks\u001b[39m \u001b[6;1H\u001b[38;5;33mV\u001b[39m \u001b[38;5;245mRevert changes to this flow\u001b[39m \u001b[7;1H\u001b[38;5;33mX\u001b[39m \u001b[38;5;245mKill this flow\u001b[39m \u001b[8;1H\u001b[38;5;33mZ\u001b[39m \u001b[38;5;245mPurge all flows not showing\u001b[39m \u001b[9;1H\u001b[38;5;33ma\u001b[39m \u001b[38;5;245mResume this intercepted flow\u001b[39m \u001b[10;1H\u001b[38;5;33mb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m \u001b[11;1H\u001b[38;5;33md\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m "]
|
||||
[147.306458, "o", " \u001b[12;1H\u001b[38;5;33me\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m \u001b[13;1H\u001b[38;5;33mf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m \u001b[14;1H\u001b[38;5;33mm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m \u001b[15;1H\u001b[38;5;33mn\u001b[39m \u001b[38;5;245mCreate a new flow\u001b[39m \u001b[16;1H\u001b[38;5;33mo\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m \u001b[17;1H\u001b[38;5;33mr\u001b[39m \u001b[38;5;245mReplay this flow\u001b[39m \u001b"]
|
||||
[147.306693, "o", "[18;1H\u001b[38;5;33mv\u001b[39m \u001b[38;5;245mReverse flow list order\u001b[39m \u001b[19;1H\u001b[38;5;33mw\u001b[39m \u001b[38;5;245mSave listed flows to file\u001b[39m \u001b[20;1H\u001b[38;5;33mz\u001b[39m \u001b[38;5;245mClear flow list\u001b[39m \u001b[21;1H\u001b[38;5;33m|\u001b[39m \u001b[38;5;245mRun a script on this flow\u001b[39m \u001b[22;1H\u001b[38;5;33mctrl l\u001b[39m \u001b[38;5;245mSend cuts to clipboard\u001b[39m \u001b[23;1H \u001b[24;1H\u001b[38;5;33mGlobal Keybindings\u001b[39m "]
|
||||
[147.306989, "o", " \u001b[25;1H\u001b[38;5;33m-\u001b[39m \u001b[38;5;245mCycle to next layout\u001b[39m \u001b[26;1H\u001b[38;5;33m:\u001b[39m \u001b[38;5;245mCommand prompt\u001b[39m \u001b[27;1H\u001b[38;5;33m?\u001b[39m \u001b[38;5;245mView help\u001b[39m \u001b[28;1H\u001b[38;5;33mB\u001b[m\u000f \u001b[38;5;245mStart an attached browser\u001b[39m \u001b[29;1H\u001b[38;5;33mC\u001b[39m \u001b[38;5;245mView commands\u001b[39m \u001b[30;1H\u001b[38;5;33mE\u001b[39m \u001b[38;5;245mView event log\u001b[39m \u001b[31;1H\u001b[38;5;33mG\u001b[39m \u001b[38;5;24"]
|
||||
[147.307359, "o", "5mGo to end\u001b[39m \u001b[32;1H\u001b[38;5;33mI\u001b[39m \u001b[38;5;245mToggle intercept\u001b[39m \u001b[33;1H\u001b[38;5;33mK\u001b[39m \u001b[38;5;245mView key bindings\u001b[39m \u001b[34;1H\u001b[38;5;33mO\u001b[39m \u001b[38;5;245mView options\u001b[39m \u001b[34;120H"]
|
||||
[147.566551, "o", "\u001b[5;1H\u001b[38;5;33mV\u001b[39m \u001b[38;5;245mRevert changes to this flow\u001b[39m \u001b[6;1H\u001b[38;5;33mX\u001b[39m \u001b[38;5;245mKill this flow\u001b[39m \u001b[7;1H\u001b[38;5;33mZ\u001b[39m \u001b[38;5;245mPurge all flows not showing\u001b[39m \u001b[8;1H\u001b[38;5;33ma\u001b[39m \u001b[38;5;245mResume this intercepted flow\u001b[39m \u001b[9;1H\u001b[38;5;33mb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m \u001b[10;1H\u001b[38;5;33md\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m \u001b[11;1H\u001b[38;5;33me\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m "]
|
||||
[147.566828, "o", " \u001b[12;1H\u001b[38;5;33mf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m \u001b[13;1H\u001b[38;5;33mm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m \u001b[14;1H\u001b[38;5;33mn\u001b[39m \u001b[38;5;245mCreate a new flow\u001b[39m \u001b[15;1H\u001b[38;5;33mo\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m \u001b[16;1H\u001b[38;5;33mr\u001b[39m \u001b[38;5;245mReplay this flow\u001b[39m \u001b[17;1H\u001b[38;5;33mv\u001b[39m \u001b[38;5;245mReverse flow list order\u001b[39m "]
|
||||
[147.56719, "o", " \u001b[18;1H\u001b[38;5;33mw\u001b[39m \u001b[38;5;245mSave listed flows to file\u001b[39m \u001b[19;1H\u001b[38;5;33mz\u001b[39m \u001b[38;5;245mClear flow list\u001b[39m \u001b[20;1H\u001b[38;5;33m|\u001b[39m \u001b[38;5;245mRun a script on this flow\u001b[39m \u001b[21;1H\u001b[38;5;33mctrl l\u001b[39m \u001b[38;5;245mSend cuts to clipboard\u001b[39m \u001b[22;1H \u001b[23;1H\u001b[38;5;33mGlobal Keybindings\u001b[39m \u001b[24;1H\u001b[38;5;33m-\u001b[39m \u001b[38;5;245mCycle to next layout\u001b[39m "]
|
||||
[147.567441, "o", " \u001b[25;1H\u001b[38;5;33m:\u001b[39m \u001b[38;5;245mCommand prompt\u001b[39m \u001b[26;1H\u001b[38;5;33m?\u001b[39m \u001b[38;5;245mView help\u001b[39m \u001b[27;1H\u001b[38;5;33mB\u001b[39m \u001b[38;5;245mStart an attached browser\u001b[39m \u001b[28;1H\u001b[38;5;33mC\u001b[m\u000f \u001b[38;5;245mView commands\u001b[39m \u001b[29;1H\u001b[38;5;33mE\u001b[39m \u001b[38;5;245mView event log\u001b[39m \u001b[30;1H\u001b[38;5;33mG\u001b[39m \u001b[38;5;245mGo to end\u001b[39m \u001b[31;1H\u001b[38;5;33mI\u001b[39m \u001b[38;5;"]
|
||||
[147.567731, "o", "245mToggle intercept\u001b[39m \u001b[32;1H\u001b[38;5;33mK\u001b[39m \u001b[38;5;245mView key bindings\u001b[39m \u001b[33;1H\u001b[38;5;33mO\u001b[39m \u001b[38;5;245mView options\u001b[39m \u001b[34;1H\u001b[38;5;33mP\u001b[39m \u001b[38;5;245mView flow details\u001b[39m \u001b[34;120H"]
|
||||
[147.607373, "o", "\u001b[3;1H"]
|
||||
[147.876557, "o", "\u001b[2B\u001b[38;5;33mX\u001b[39m \u001b[38;5;245mKill this flow\u001b[39m \u001b[6;1H\u001b[38;5;33mZ\u001b[39m \u001b[38;5;245mPurge all flows not showing\u001b[39m \u001b[7;1H\u001b[38;5;33ma\u001b[39m \u001b[38;5;245mResume this intercepted flow\u001b[39m \u001b[8;1H\u001b[38;5;33mb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m \u001b[9;1H\u001b[38;5;33md\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m \u001b[10;1H\u001b[38;5;33me\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m \u001b[11;1H\u001b[38;5;33mf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m "]
|
||||
[147.876823, "o", " \u001b[12;1H\u001b[38;5;33mm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m \u001b[13;1H\u001b[38;5;33mn\u001b[39m \u001b[38;5;245mCreate a new flow\u001b[39m \u001b[14;1H\u001b[38;5;33mo\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m \u001b[15;1H\u001b[38;5;33mr\u001b[39m \u001b[38;5;245mReplay this flow\u001b[39m \u001b[16;1H\u001b[38;5;33mv\u001b[39m \u001b[38;5;245mReverse flow list order\u001b[39m \u001b[17;1H\u001b[38;5;33mw\u001b[39m \u001b[38;5;245mSave listed flows to file\u001b[39m \u001b"]
|
||||
[147.877032, "o", "[18;1H\u001b[38;5;33mz\u001b[39m \u001b[38;5;245mClear flow list\u001b[39m \u001b[19;1H\u001b[38;5;33m|\u001b[39m \u001b[38;5;245mRun a script on this flow\u001b[39m \u001b[20;1H\u001b[38;5;33mctrl l\u001b[39m \u001b[38;5;245mSend cuts to clipboard\u001b[39m \u001b[21;1H \u001b[22;1H\u001b[38;5;33mGlobal Keybindings\u001b[39m \u001b[23;1H\u001b[38;5;33m-\u001b[39m \u001b[38;5;245mCycle to next layout\u001b[39m \u001b[24;1H\u001b[38;5;33m:\u001b[39m \u001b[38;5;245mCommand prompt\u001b[39m "]
|
||||
[147.877208, "o", " \u001b[25;1H\u001b[38;5;33m?\u001b[39m \u001b[38;5;245mView help\u001b[39m \u001b[26;1H\u001b[38;5;33mB\u001b[39m \u001b[38;5;245mStart an attached browser\u001b[39m \u001b[27;1H\u001b[38;5;33mC\u001b[39m \u001b[38;5;245mView commands\u001b[39m \u001b[28;1H\u001b[38;5;33mE\u001b[m\u000f \u001b[38;5;245mView event log\u001b[39m \u001b[29;1H\u001b[38;5;33mG\u001b[39m \u001b[38;5;245mGo to end\u001b[39m \u001b[30;1H\u001b[38;5;33mI\u001b[39m \u001b[38;5;245mToggle intercept\u001b[39m \u001b[31;1H\u001b[38;5;33mK\u001b[39m \u001b[38;5;24"]
|
||||
[147.877443, "o", "5mView key bindings\u001b[39m \u001b[32;1H\u001b[38;5;33mO\u001b[39m \u001b[38;5;245mView options\u001b[39m \u001b[33;1H\u001b[38;5;33mP\u001b[39m \u001b[38;5;245mView flow details\u001b[39m \u001b[34;1H\u001b[38;5;33mQ\u001b[39m \u001b[38;5;245mExit immediately\u001b[39m \u001b[34;120H"]
|
||||
[148.109788, "o", "\u001b[3;1H"]
|
||||
[148.136185, "o", "\u001b[2B\u001b[38;5;33mZ\u001b[39m \u001b[38;5;245mPurge all flows not showing\u001b[39m \u001b[6;1H\u001b[38;5;33ma\u001b[39m \u001b[38;5;245mResume this intercepted flow\u001b[39m \u001b[7;1H\u001b[38;5;33mb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m \u001b[8;1H\u001b[38;5;33md\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m \u001b[9;1H\u001b[38;5;33me\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m \u001b[10;1H\u001b[38;5;33mf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m \u001b[11;1H\u001b[38;5;33mm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m "]
|
||||
[148.136289, "o", " \u001b[12;1H\u001b[38;5;33mn\u001b[39m \u001b[38;5;245mCreate a new flow\u001b[39m \u001b[13;1H\u001b[38;5;33mo\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m \u001b[14;1H\u001b[38;5;33mr\u001b[39m \u001b[38;5;245mReplay this flow\u001b[39m \u001b[15;1H\u001b[38;5;33mv\u001b[39m \u001b[38;5;245mReverse flow list order\u001b[39m \u001b[16;1H\u001b[38;5;33mw\u001b[39m \u001b[38;5;245mSave listed flows to file\u001b[39m \u001b[17;1H\u001b[38;5;33mz\u001b[39m \u001b[38;5;245mClear flow list\u001b[39m \u001b"]
|
||||
[148.136752, "o", "[18;1H\u001b[38;5;33m|\u001b[39m \u001b[38;5;245mRun a script on this flow\u001b[39m \u001b[19;1H\u001b[38;5;33mctrl l\u001b[39m \u001b[38;5;245mSend cuts to clipboard\u001b[39m \u001b[20;1H \u001b[21;1H\u001b[38;5;33mGlobal Keybindings\u001b[39m \u001b[22;1H\u001b[38;5;33m-\u001b[39m \u001b[38;5;245mCycle to next layout\u001b[39m \u001b[23;1H\u001b[38;5;33m:\u001b[39m \u001b[38;5;245mCommand prompt\u001b[39m \u001b[24;1H\u001b[38;5;33m?\u001b[39m \u001b[38;5;245mView help\u001b[39m "]
|
||||
[148.136962, "o", " \u001b[25;1H\u001b[38;5;33mB\u001b[39m \u001b[38;5;245mStart an attached browser\u001b[39m \u001b[26;1H\u001b[38;5;33mC\u001b[39m \u001b[38;5;245mView commands\u001b[39m \u001b[27;1H\u001b[38;5;33mE\u001b[39m \u001b[38;5;245mView event log\u001b[39m \u001b[28;1H\u001b[38;5;33mG\u001b[m\u000f \u001b[38;5;245mGo to end\u001b[39m \u001b[29;1H\u001b[38;5;33mI\u001b[39m \u001b[38;5;245mToggle intercept\u001b[39m \u001b[30;1H\u001b[38;5;33mK\u001b[39m \u001b[38;5;245mView key bindings\u001b[39m \u001b[31;1H\u001b[38;5;33mO\u001b[39m \u001b[38;5;24"]
|
||||
[148.137225, "o", "5mView options\u001b[39m \u001b[32;1H\u001b[38;5;33mP\u001b[39m \u001b[38;5;245mView flow details\u001b[39m \u001b[33;1H\u001b[38;5;33mQ\u001b[39m \u001b[38;5;245mExit immediately\u001b[39m \u001b[34;1H\u001b[38;5;33mW\u001b[39m \u001b[38;5;245mStream to file\u001b[39m \u001b[34;120H"]
|
||||
[148.615851, "o", "\u001b[3;1H"]
|
||||
[148.624906, "o", "\u001b[2B\u001b[38;5;33ma\u001b[39m \u001b[38;5;245mResume this intercepted flow\u001b[39m \u001b[6;1H\u001b[38;5;33mb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m \u001b[7;1H\u001b[38;5;33md\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m \u001b[8;1H\u001b[38;5;33me\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m \u001b[9;1H\u001b[38;5;33mf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m \u001b[10;1H\u001b[38;5;33mm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m \u001b[11;1H\u001b[38;5;33mn\u001b[39m \u001b[38;5;245mCreate a new flow\u001b[39m "]
|
||||
[148.625231, "o", " \u001b[12;1H\u001b[38;5;33mo\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m \u001b[13;1H\u001b[38;5;33mr\u001b[39m \u001b[38;5;245mReplay this flow\u001b[39m \u001b[14;1H\u001b[38;5;33mv\u001b[39m \u001b[38;5;245mReverse flow list order\u001b[39m \u001b[15;1H\u001b[38;5;33mw\u001b[39m \u001b[38;5;245mSave listed flows to file\u001b[39m \u001b[16;1H\u001b[38;5;33mz\u001b[39m \u001b[38;5;245mClear flow list\u001b[39m \u001b[17;1H\u001b[38;5;33m|\u001b[39m \u001b[38;5;245mRun a script on this flow\u001b[39m \u001b"]
|
||||
[148.625465, "o", "[18;1H\u001b[38;5;33mctrl l\u001b[39m \u001b[38;5;245mSend cuts to clipboard\u001b[39m \u001b[19;1H \u001b[20;1H\u001b[38;5;33mGlobal Keybindings\u001b[39m \u001b[21;1H\u001b[38;5;33m-\u001b[39m \u001b[38;5;245mCycle to next layout\u001b[39m \u001b[22;1H\u001b[38;5;33m:\u001b[39m \u001b[38;5;245mCommand prompt\u001b[39m \u001b[23;1H\u001b[38;5;33m?\u001b[39m \u001b[38;5;245mView help\u001b[39m \u001b[24;1H\u001b[38;5;33mB\u001b[39m \u001b[38;5;245mStart an attached browser\u001b[39m "]
|
||||
[148.625731, "o", " \u001b[25;1H\u001b[38;5;33mC\u001b[39m \u001b[38;5;245mView commands\u001b[39m \u001b[26;1H\u001b[38;5;33mE\u001b[39m \u001b[38;5;245mView event log\u001b[39m \u001b[27;1H\u001b[38;5;33mG\u001b[39m \u001b[38;5;245mGo to end\u001b[39m \u001b[28;1H\u001b[38;5;33mI\u001b[m\u000f \u001b[38;5;245mToggle intercept\u001b[39m \u001b[29;1H\u001b[38;5;33mK\u001b[39m \u001b[38;5;245mView key bindings\u001b[39m \u001b[30;1H\u001b[38;5;33mO\u001b[39m \u001b[38;5;245mView options\u001b[39m \u001b[31;1H\u001b[38;5;33mP\u001b[39m \u001b[38;5;24"]
|
||||
[148.625986, "o", "5mView flow details\u001b[39m \u001b[32;1H\u001b[38;5;33mQ\u001b[39m \u001b[38;5;245mExit immediately\u001b[39m \u001b[33;1H\u001b[38;5;33mW\u001b[39m \u001b[38;5;245mStream to file\u001b[39m \u001b[34;1H\u001b[38;5;33menter\u001b[39m \u001b[38;5;245mSelect\u001b[39m \u001b[34;120H"]
|
||||
[149.113589, "o", "\u001b[3;1H"]
|
||||
[149.199791, "o", "\u001b[2B\u001b[38;5;33mb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m \u001b[6;1H\u001b[38;5;33md\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m \u001b[7;1H\u001b[38;5;33me\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m \u001b[8;1H\u001b[38;5;33mf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m \u001b[9;1H\u001b[38;5;33mm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m \u001b[10;1H\u001b[38;5;33mn\u001b[39m \u001b[38;5;245mCreate a new flow\u001b[39m \u001b[11;1H\u001b[38;5;33mo\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m "]
|
||||
[149.199906, "o", " \u001b[12;1H\u001b[38;5;33mr\u001b[39m \u001b[38;5;245mReplay this flow\u001b[39m \u001b[13;1H\u001b[38;5;33mv\u001b[39m \u001b[38;5;245mReverse flow list order\u001b[39m \u001b[14;1H\u001b[38;5;33mw\u001b[39m \u001b[38;5;245mSave listed flows to file\u001b[39m \u001b[15;1H\u001b[38;5;33mz\u001b[39m \u001b[38;5;245mClear flow list\u001b[39m \u001b[16;1H\u001b[38;5;33m|\u001b[39m \u001b[38;5;245mRun a script on this flow\u001b[39m \u001b[17;1H\u001b[38;5;33mctrl l\u001b[39m \u001b[38;5;245mSend cuts to clipboard\u001b[39m \u001b"]
|
||||
[149.200093, "o", "[18;1H \u001b[19;1H\u001b[38;5;33mGlobal Keybindings\u001b[39m \u001b[20;1H\u001b[38;5;33m-\u001b[39m \u001b[38;5;245mCycle to next layout\u001b[39m \u001b[21;1H\u001b[38;5;33m:\u001b[39m \u001b[38;5;245mCommand prompt\u001b[39m \u001b[22;1H\u001b[38;5;33m?\u001b[39m \u001b[38;5;245mView help\u001b[39m \u001b[23;1H\u001b[38;5;33mB\u001b[39m \u001b[38;5;245mStart an attached browser\u001b[39m \u001b[24;1H\u001b[38;5;33mC\u001b[39m \u001b[38;5;245mView commands\u001b[39m "]
|
||||
[149.20036, "o", " \u001b[25;1H\u001b[38;5;33mE\u001b[39m \u001b[38;5;245mView event log\u001b[39m \u001b[26;1H\u001b[38;5;33mG\u001b[39m \u001b[38;5;245mGo to end\u001b[39m \u001b[27;1H\u001b[38;5;33mI\u001b[39m \u001b[38;5;245mToggle intercept\u001b[39m \u001b[28;1H\u001b[38;5;33mK\u001b[m\u000f \u001b[38;5;245mView key bindings\u001b[39m \u001b[29;1H\u001b[38;5;33mO\u001b[39m \u001b[38;5;245mView options\u001b[39m \u001b[30;1H\u001b[38;5;33mP\u001b[39m \u001b[38;5;245mView flow details\u001b[39m \u001b[31;1H\u001b[38;5;33mQ\u001b[39m \u001b[38;5;24"]
|
||||
[149.200722, "o", "5mExit immediately\u001b[39m \u001b[32;1H\u001b[38;5;33mW\u001b[39m \u001b[38;5;245mStream to file\u001b[39m \u001b[33;1H\u001b[38;5;33menter\u001b[39m \u001b[38;5;245mSelect\u001b[39m \u001b[34;1H\u001b[38;5;33mg\u001b[39m \u001b[38;5;245mGo to start\u001b[39m \u001b[34;120H"]
|
||||
[149.418105, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HHelp \u001b[4;1H Key Bindings \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Filter Expressions \u001b[49m\u001b[38;5;33m\u001b[5;1Hb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m \u001b[38;5;33m\u001b[6;1Hd\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m \u001b[38;5;33m\u001b[7;1He\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m \u001b[38;5;33m\u001b[8;1Hf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m "]
|
||||
[149.418466, "o", " \u001b[38;5;33m\u001b[9;1Hm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m \u001b[38;5;33m\u001b[10;1Hn\u001b[39m \u001b[38;5;245mCreate a new flow\u001b[39m \u001b[38;5;33m\u001b[11;1Ho\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m \u001b[38;5;33m\u001b[12;1Hr\u001b[39m \u001b[38;5;245mReplay this flow\u001b[39m \u001b[38;5;33m\u001b[13;1Hv\u001b[39m \u001b[38;5;245mReverse flow list order\u001b[39m \u001b[38;5;33m\u001b[14;1Hw\u001b[39m \u001b[38;5;245mSave listed flows to file\u001b[39m \u001b[38;5;33m\u001b[15"]
|
||||
[149.418663, "o", ";1Hz\u001b[39m \u001b[38;5;245mClear flow list\u001b[39m \u001b[38;5;33m\u001b[16;1H|\u001b[39m \u001b[38;5;245mRun a script on this flow\u001b[39m \u001b[38;5;33m\u001b[17;1Hctrl l\u001b[39m \u001b[38;5;245mSend cuts to clipboard\u001b[39m \u001b[18;1H \u001b[38;5;33m\u001b[19;1HGlobal Keybindings\u001b[39m \u001b[38;5;33m\u001b[20;1H-\u001b[39m \u001b[38;5;245mCycle to next layout\u001b[39m \u001b[38;5;33m\u001b[21;1H:\u001b[39m \u001b[38;5;245mCommand prompt\u001b[39m "]
|
||||
[149.418922, "o", " \u001b[38;5;33m\u001b[22;1H?\u001b[39m \u001b[38;5;245mView help\u001b[39m \u001b[38;5;33m\u001b[23;1HB\u001b[39m \u001b[38;5;245mStart an attached browser\u001b[39m \u001b[38;5;33m\u001b[24;1HC\u001b[39m \u001b[38;5;245mView commands\u001b[39m \u001b[38;5;33m\u001b[25;1HE\u001b[39m \u001b[38;5;245mView event log\u001b[39m \u001b[38;5;33m\u001b[26;1HG\u001b[39m \u001b[38;5;245mGo to end\u001b[39m \u001b[38;5;33m\u001b[27;1HI\u001b[39m \u001b[38;5;245mToggle intercept\u001b[39m \u001b[38;5;33m\u001b[28;1HK\u001b[39m \u001b[38;5;245mView key b"]
|
||||
[149.419105, "o", "indings\u001b[39m \u001b[38;5;33m\u001b[29;1HO\u001b[39m \u001b[38;5;245mView options\u001b[39m \u001b[38;5;33m\u001b[30;1HP\u001b[39m \u001b[38;5;245mView flow details\u001b[39m \u001b[38;5;33m\u001b[31;1HQ\u001b[39m \u001b[38;5;245mExit immediately\u001b[39m \u001b[38;5;33m\u001b[32;1HW\u001b[39m \u001b[38;5;245mStream to file\u001b[39m \u001b[38;5;33m\u001b[33;1Henter\u001b[39m \u001b[38;5;245mSelect\u001b[39m \u001b[38;5;33m\u001b[34;1Hg\u001b[39m \u001b[38;5;245mGo to start\u001b[39m "]
|
||||
[149.419336, "o", " \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[34;120H"]
|
||||
[149.422669, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Tip: Remember the `?` shortcut. It works in every view. \u001b[m\u000f\u001b[34;120H"]
|
||||
[149.617479, "o", "\u001b[3;1H"]
|
||||
[153.825878, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HHelp \u001b[4;1H Key Bindings \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Filter Expressions \u001b[49m\u001b[38;5;33m\u001b[5;1Hb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m \u001b[38;5;33m\u001b[6;1Hd\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m \u001b[38;5;33m\u001b[7;1He\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m \u001b[38;5;33m\u001b[8;1Hf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m "]
|
||||
[153.826152, "o", " \u001b[38;5;33m\u001b[9;1Hm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m \u001b[38;5;33m\u001b[10;1Hn\u001b[39m \u001b[38;5;245mCreate a new flow\u001b[39m \u001b[38;5;33m\u001b[11;1Ho\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m \u001b[38;5;33m\u001b[12;1Hr\u001b[39m \u001b[38;5;245mReplay this flow\u001b[39m \u001b[38;5;33m\u001b[13;1Hv\u001b[39m \u001b[38;5;245mReverse flow list order\u001b[39m \u001b[38;5;33m\u001b[14;1Hw\u001b[39m \u001b[38;5;245mSave listed flows to file\u001b[39m \u001b[38;5;33m\u001b[15"]
|
||||
[153.82627, "o", ";1Hz\u001b[39m \u001b[38;5;245mClear flow list\u001b[39m \u001b[38;5;33m\u001b[16;1H|\u001b[39m \u001b[38;5;245mRun a script on this flow\u001b[39m \u001b[38;5;33m\u001b[17;1Hctrl l\u001b[39m \u001b[38;5;245mSend cuts to clipboard\u001b[39m \u001b[18;1H \u001b[38;5;33m\u001b[19;1HGlobal Keybindings\u001b[39m \u001b[38;5;33m\u001b[20;1H-\u001b[39m \u001b[38;5;245mCycle to next layout\u001b[39m \u001b[38;5;33m\u001b[21;1H:\u001b[39m \u001b[38;5;245mCommand prompt\u001b[39m "]
|
||||
[153.82639, "o", " \u001b[38;5;33m\u001b[22;1H?\u001b[39m \u001b[38;5;245mView help\u001b[39m \u001b[38;5;33m\u001b[23;1HB\u001b[39m \u001b[38;5;245mStart an attached browser\u001b[39m \u001b[38;5;33m\u001b[24;1HC\u001b[39m \u001b[38;5;245mView commands\u001b[39m \u001b[38;5;33m\u001b[25;1HE\u001b[39m \u001b[38;5;245mView event log\u001b[39m \u001b[38;5;33m\u001b[26;1HG\u001b[39m \u001b[38;5;245mGo to end\u001b[39m \u001b[38;5;33m\u001b[27;1HI\u001b[39m \u001b[38;5;245mToggle intercept\u001b[39m \u001b[38;5;33m\u001b[28;1HK\u001b[39m \u001b[38;5;245mView key b"]
|
||||
[153.82656, "o", "indings\u001b[39m \u001b[38;5;33m\u001b[29;1HO\u001b[39m \u001b[38;5;245mView options\u001b[39m \u001b[38;5;33m\u001b[30;1HP\u001b[39m \u001b[38;5;245mView flow details\u001b[39m \u001b[38;5;33m\u001b[31;1HQ\u001b[39m \u001b[38;5;245mExit immediately\u001b[39m \u001b[38;5;33m\u001b[32;1HW\u001b[39m \u001b[38;5;245mStream to file\u001b[39m \u001b[38;5;33m\u001b[33;1Henter\u001b[39m \u001b[38;5;245mSelect\u001b[39m \u001b[38;5;33m\u001b[34;1Hg\u001b[39m \u001b[38;5;245mGo to start\u001b[39m "]
|
||||
[153.826813, "o", " \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[154.328248, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HHelp \u001b[4;1H Key Bindings \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Filter Expressions \u001b[49m\u001b[38;5;33m\u001b[5;1Hb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m \u001b[38;5;33m\u001b[6;1Hd\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m \u001b[38;5;33m\u001b[7;1He\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m \u001b[38;5;33m\u001b[8;1Hf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m "]
|
||||
[154.328558, "o", " \u001b[38;5;33m\u001b[9;1Hm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m \u001b[38;5;33m\u001b[10;1Hn\u001b[39m \u001b[38;5;245mCreate a new flow\u001b[39m \u001b[38;5;33m\u001b[11;1Ho\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m \u001b[38;5;33m\u001b[12;1Hr\u001b[39m \u001b[38;5;245mReplay this flow\u001b[39m \u001b[38;5;33m\u001b[13;1Hv\u001b[39m \u001b[38;5;245mReverse flow list order\u001b[39m \u001b[38;5;33m\u001b[14;1Hw\u001b[39m \u001b[38;5;245mSave listed flows to file\u001b[39m \u001b[38;5;33m\u001b[15"]
|
||||
[154.328828, "o", ";1Hz\u001b[39m \u001b[38;5;245mClear flow list\u001b[39m \u001b[38;5;33m\u001b[16;1H|\u001b[39m \u001b[38;5;245mRun a script on this flow\u001b[39m \u001b[38;5;33m\u001b[17;1Hctrl l\u001b[39m \u001b[38;5;245mSend cuts to clipboard\u001b[39m \u001b[18;1H \u001b[38;5;33m\u001b[19;1HGlobal Keybindings\u001b[39m \u001b[38;5;33m\u001b[20;1H-\u001b[39m \u001b[38;5;245mCycle to next layout\u001b[39m \u001b[38;5;33m\u001b[21;1H:\u001b[39m \u001b[38;5;245mCommand prompt\u001b[39m "]
|
||||
[154.329106, "o", " \u001b[38;5;33m\u001b[22;1H?\u001b[39m \u001b[38;5;245mView help\u001b[39m \u001b[38;5;33m\u001b[23;1HB\u001b[39m \u001b[38;5;245mStart an attached browser\u001b[39m \u001b[38;5;33m\u001b[24;1HC\u001b[39m \u001b[38;5;245mView commands\u001b[39m \u001b[38;5;33m\u001b[25;1HE\u001b[39m \u001b[38;5;245mView event log\u001b[39m \u001b[38;5;33m\u001b[26;1HG\u001b[39m \u001b[38;5;245mGo to end\u001b[39m \u001b[38;5;33m\u001b[27;1HI\u001b[39m \u001b[38;5;245mToggle intercept\u001b[39m \u001b[38;5;33m\u001b[28;1HK\u001b[39m \u001b[38;5;245mView key b"]
|
||||
[154.329501, "o", "indings\u001b[39m \u001b[38;5;33m\u001b[29;1HO\u001b[39m \u001b[38;5;245mView options\u001b[39m \u001b[38;5;33m\u001b[30;1HP\u001b[39m \u001b[38;5;245mView flow details\u001b[39m \u001b[38;5;33m\u001b[31;1HQ\u001b[39m \u001b[38;5;245mExit immediately\u001b[39m \u001b[38;5;33m\u001b[32;1HW\u001b[39m \u001b[38;5;245mStream to file\u001b[39m \u001b[38;5;33m\u001b[33;1Henter\u001b[39m \u001b[38;5;245mSelect\u001b[39m \u001b[38;5;33m\u001b[34;1Hg\u001b[39m \u001b[38;5;245mGo to start\u001b[39m "]
|
||||
[154.329783, "o", " \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[154.33363, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Press `q` to exit the current view. \u001b[m\u000f\u001b[3;1H"]
|
||||
[157.135387, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HHelp \u001b[4;1H Key Bindings \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Filter Expressions \u001b[49m\u001b[38;5;33m\u001b[5;1Hb\u001b[39m \u001b[38;5;245mSave response body to file\u001b[39m \u001b[38;5;33m\u001b[6;1Hd\u001b[39m \u001b[38;5;245mDelete flow from view\u001b[39m \u001b[38;5;33m\u001b[7;1He\u001b[39m \u001b[38;5;245mExport this flow to file\u001b[39m \u001b[38;5;33m\u001b[8;1Hf\u001b[39m \u001b[38;5;245mSet view filter\u001b[39m "]
|
||||
[157.135651, "o", " \u001b[38;5;33m\u001b[9;1Hm\u001b[39m \u001b[38;5;245mToggle mark on this flow\u001b[39m \u001b[38;5;33m\u001b[10;1Hn\u001b[39m \u001b[38;5;245mCreate a new flow\u001b[39m \u001b[38;5;33m\u001b[11;1Ho\u001b[39m \u001b[38;5;245mSet flow list order\u001b[39m \u001b[38;5;33m\u001b[12;1Hr\u001b[39m \u001b[38;5;245mReplay this flow\u001b[39m \u001b[38;5;33m\u001b[13;1Hv\u001b[39m \u001b[38;5;245mReverse flow list order\u001b[39m \u001b[38;5;33m\u001b[14;1Hw\u001b[39m \u001b[38;5;245mSave listed flows to file\u001b[39m \u001b[38;5;33m\u001b[15"]
|
||||
[157.135853, "o", ";1Hz\u001b[39m \u001b[38;5;245mClear flow list\u001b[39m \u001b[38;5;33m\u001b[16;1H|\u001b[39m \u001b[38;5;245mRun a script on this flow\u001b[39m \u001b[38;5;33m\u001b[17;1Hctrl l\u001b[39m \u001b[38;5;245mSend cuts to clipboard\u001b[39m \u001b[18;1H \u001b[38;5;33m\u001b[19;1HGlobal Keybindings\u001b[39m \u001b[38;5;33m\u001b[20;1H-\u001b[39m \u001b[38;5;245mCycle to next layout\u001b[39m \u001b[38;5;33m\u001b[21;1H:\u001b[39m \u001b[38;5;245mCommand prompt\u001b[39m "]
|
||||
[157.136031, "o", " \u001b[38;5;33m\u001b[22;1H?\u001b[39m \u001b[38;5;245mView help\u001b[39m \u001b[38;5;33m\u001b[23;1HB\u001b[39m \u001b[38;5;245mStart an attached browser\u001b[39m \u001b[38;5;33m\u001b[24;1HC\u001b[39m \u001b[38;5;245mView commands\u001b[39m \u001b[38;5;33m\u001b[25;1HE\u001b[39m \u001b[38;5;245mView event log\u001b[39m \u001b[38;5;33m\u001b[26;1HG\u001b[39m \u001b[38;5;245mGo to end\u001b[39m \u001b[38;5;33m\u001b[27;1HI\u001b[39m \u001b[38;5;245mToggle intercept\u001b[39m \u001b[38;5;33m\u001b[28;1HK\u001b[39m \u001b[38;5;245mView key b"]
|
||||
[157.13619, "o", "indings\u001b[39m \u001b[38;5;33m\u001b[29;1HO\u001b[39m \u001b[38;5;245mView options\u001b[39m \u001b[38;5;33m\u001b[30;1HP\u001b[39m \u001b[38;5;245mView flow details\u001b[39m \u001b[38;5;33m\u001b[31;1HQ\u001b[39m \u001b[38;5;245mExit immediately\u001b[39m \u001b[38;5;33m\u001b[32;1HW\u001b[39m \u001b[38;5;245mStream to file\u001b[39m \u001b[38;5;33m\u001b[33;1Henter\u001b[39m \u001b[38;5;245mSelect\u001b[39m \u001b[38;5;33m\u001b[34;1Hg\u001b[39m \u001b[38;5;245mGo to start\u001b[39m "]
|
||||
[157.136439, "o", " \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[157.661732, "o", "\u001b[38;5;254m\u001b[48;5;240mFlows \u001b[4;1H\u001b[49m\u001b[38;5;245m>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H \u001b[7;1H "]
|
||||
[157.661975, "o", " \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H "]
|
||||
[157.66222, "o", " \u001b[16;1H \u001b[17;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H "]
|
||||
[157.66246, "o", " \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H \u001b[31;1H \u001b[32;1H "]
|
||||
[157.662545, "o", " \u001b[33;1H \u001b[34;1H \u001b[34;120H"]
|
||||
[157.92275, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[157.922957, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[157.92322, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[157.923381, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[157.923623, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[34;120H"]
|
||||
[157.927757, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Each shortcut is internally bound to a command. \u001b[m\u000f\u001b[34;120H"]
|
||||
[158.135139, "o", "\u001b[3;1H"]
|
||||
[161.686571, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[161.686871, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[161.687131, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[161.68739, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[161.687618, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[162.19682, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[162.196927, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[162.197149, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[162.197218, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[162.197282, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[162.201464, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H You can also execute commands directly (without using shortcuts). \u001b[m\u000f\u001b[3;1H"]
|
||||
[167.394377, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[167.394486, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[167.394627, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[167.395014, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[167.395321, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[167.913379, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[167.913692, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[167.913998, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[167.914194, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[167.914507, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[167.918971, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Press `:` to open the command prompt at the bottom. \u001b[m\u000f\u001b[3;1H"]
|
||||
[171.996646, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[171.996752, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[171.997015, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[171.9972, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[171.997358, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[172.523825, "o", "\u001b[36d: \r: \u001b[36;119H \u001b[3G\u001b[34h\u001b[?25h"]
|
||||
[172.616078, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2d Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[172.616495, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[172.616734, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[172.616806, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[172.617033, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H: \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[34h\u001b[?25h\u001b[36;3H"]
|
||||
[172.622689, "o", "\u001b[?25l\u001b[38;5;231m\u001b[48;5;68m\u001b[H Enter `console.view.flow @focus`. \u001b[m\u000f\u001b[36;3H"]
|
||||
[175.268432, "o", "\u001b[38;5;231m\u001b[2d Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[175.268713, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[175.268922, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[175.269062, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[175.269285, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H: \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[36;3H\u001b[34h\u001b[?25h"]
|
||||
[175.783094, "o", "\r: \u001b[38;5;166mc\u001b[39m \u001b[?25l\r: \u001b[38;5;166mc\u001b[39m \u001b[36;119H \u001b[4G\u001b[34h\u001b[?25h"]
|
||||
[176.083288, "o", "\r: \u001b[38;5;166mco\u001b[39m \u001b[?25l\r: \u001b[38;5;166mco\u001b[39m \u001b[36;119H \u001b[5G\u001b[34h\u001b[?25h"]
|
||||
[176.301222, "o", "\r: \u001b[38;5;166mcon\u001b[39m \u001b[?25l\r: \u001b[38;5;166mcon\u001b[39m \u001b[36;119H \u001b[6G\u001b[34h\u001b[?25h"]
|
||||
[176.87493, "o", "\r: \u001b[38;5;166mcons\u001b[39m \u001b[?25l\r: \u001b[38;5;166mcons\u001b[39m \u001b[36;119H \u001b[7G\u001b[34h\u001b[?25h"]
|
||||
[177.04291, "o", "\r: \u001b[38;5;166mconso\u001b[39m \u001b[?25l\r: \u001b[38;5;166mconso\u001b[39m \u001b[36;119H \u001b[8G\u001b[34h\u001b[?25h"]
|
||||
[177.473071, "o", "\r: \u001b[38;5;166mconsol\u001b[39m \u001b[?25l\r: \u001b[38;5;166mconsol\u001b[39m \u001b[36;119H \u001b[9G\u001b[34h\u001b[?25h"]
|
||||
[177.589983, "o", "\r: \u001b[38;5;166mconsole\u001b[39m \u001b[?25l\r: \u001b[38;5;166mconsole\u001b[39m \u001b[36;119H \u001b[10G\u001b[34h\u001b[?25h"]
|
||||
[177.795602, "o", "\r: \u001b[38;5;166mconsole.\u001b[39m \u001b[?25l\r: \u001b[38;5;166mconsole.\u001b[39m \u001b[36;119H \u001b[11G\u001b[34h\u001b[?25h"]
|
||||
[178.13899, "o", "\r: \u001b[38;5;166mconsole.v\u001b[39m \u001b[?25l\r: \u001b[38;5;166mconsole.v\u001b[39m \u001b[36;119H \u001b[12G\u001b[34h\u001b[?25h"]
|
||||
[178.405005, "o", "\r: \u001b[38;5;166mconsole.vi\u001b[39m \u001b[?25l\r: \u001b[38;5;166mconsole.vi\u001b[39m \u001b[36;119H \u001b[13G\u001b[34h\u001b[?25h"]
|
||||
[178.569328, "o", "\r: \u001b[38;5;166mconsole.vie\u001b[39m \u001b[?25l\r: \u001b[38;5;166mconsole.vie\u001b[39m \u001b[36;119H \u001b[14G\u001b[34h\u001b[?25h"]
|
||||
[179.033653, "o", "\r: \u001b[38;5;166mconsole.view\u001b[39m \u001b[?25l\r: \u001b[38;5;166mconsole.view\u001b[39m \u001b[36;119H \u001b[15G\u001b[34h\u001b[?25h"]
|
||||
[179.254611, "o", "\r: \u001b[38;5;166mconsole.view.\u001b[39m \u001b[?25l\r: \u001b[38;5;166mconsole.view.\u001b[39m \u001b[36;119H \u001b[16G\u001b[34h\u001b[?25h"]
|
||||
[179.6114, "o", "\r: \u001b[38;5;166mconsole.view.f\u001b[39m \u001b[?25l\r: \u001b[38;5;166mconsole.view.f\u001b[39m \u001b[36;119H \u001b[17G\u001b[34h\u001b[?25h"]
|
||||
[179.806524, "o", "\r: \u001b[38;5;166mconsole.view.fl\u001b[39m \u001b[?25l\r: \u001b[38;5;166mconsole.view.fl\u001b[39m \u001b[36;119H \u001b[18G\u001b[34h\u001b[?25h"]
|
||||
[180.013613, "o", "\r: \u001b[38;5;166mconsole.view.flo\u001b[39m \u001b[?25l\r: \u001b[38;5;166mconsole.view.flo\u001b[39m \u001b[36;119H \u001b[19G\u001b[34h\u001b[?25h"]
|
||||
[180.141087, "o", "\r: \u001b[38;5;33mconsole.view.flow\u001b[38;5;245m \u001b[38;5;241mflow \u001b[39m \u001b[?25l\r: \u001b[38;5;33mconsole.view.flow\u001b[38;5;245m \u001b[38;5;241mflow \u001b[39m \u001b[36;119H \u001b[20G\u001b[34h\u001b[?25h"]
|
||||
[180.255442, "o", "\u001b[C"]
|
||||
[180.693155, "o", "\r: \u001b[38;5;33mconsole.view.flow\u001b[38;5;245m \u001b[38;5;166m@\u001b[39m \u001b[?25l\r: \u001b[38;5;33mconsole.view.flow\u001b[38;5;245m \u001b[38;5;166m@\u001b[39m \u001b[36;119H \u001b[22G\u001b[34h\u001b[?25h"]
|
||||
[181.002429, "o", "\r: \u001b[38;5;33mconsole.view.flow\u001b[38;5;245m \u001b[38;5;166m@f\u001b[39m \u001b[?25l\r: \u001b[38;5;33mconsole.view.flow\u001b[38;5;245m \u001b[38;5;166m@f\u001b[39m \u001b[36;119H \u001b[23G\u001b[34h\u001b[?25h"]
|
||||
[181.238934, "o", "\r: \u001b[38;5;33mconsole.view.flow\u001b[38;5;245m \u001b[38;5;166m@fo\u001b[39m \u001b[?25l\r: \u001b[38;5;33mconsole.view.flow\u001b[38;5;245m \u001b[38;5;166m@fo\u001b[39m \u001b[36;119H \u001b[24G\u001b[34h\u001b[?25h"]
|
||||
[181.4856, "o", "\r: \u001b[38;5;33mconsole.view.flow\u001b[38;5;245m \u001b[38;5;166m@foc\u001b[39m \u001b[?25l\r: \u001b[38;5;33mconsole.view.flow\u001b[38;5;245m \u001b[38;5;166m@foc\u001b[39m \u001b[36;119H \u001b[25G\u001b[34h\u001b[?25h"]
|
||||
[181.744063, "o", "\r: \u001b[38;5;33mconsole.view.flow\u001b[38;5;245m \u001b[38;5;166m@focu\u001b[39m \u001b[?25l\r: \u001b[38;5;33mconsole.view.flow\u001b[38;5;245m \u001b[38;5;166m@focu\u001b[39m \u001b[36;119H \u001b[26G\u001b[34h\u001b[?25h"]
|
||||
[181.88771, "o", "\r: \u001b[38;5;33mconsole.view.flow\u001b[38;5;245m @focus\u001b[39m \u001b[?25l\r: \u001b[38;5;33mconsole.view.flow\u001b[38;5;245m @focus\u001b[39m \u001b[36;119H \u001b[27G\u001b[34h\u001b[?25h"]
|
||||
[182.238057, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[182.238348, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[182.238551, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[182.238667, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[182.238753, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H: \u001b[38;5;33mconsole.view.flow\u001b[38;5;245m @focus\u001b[39m \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b"]
|
||||
[182.238929, "o", "[m\u000f\u001b[34h\u001b[?25h\u001b[36;27H"]
|
||||
[182.243162, "o", "\u001b[?25l\u001b[38;5;231m\u001b[48;5;68m\u001b[H The command `console.view.flow` opens the details view for a flow. \u001b[m\u000f\u001b[36;27H"]
|
||||
[187.525285, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[187.525615, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[187.525923, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[187.526138, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[187.526221, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H: \u001b[38;5;33mconsole.view.flow\u001b[38;5;245m @focus\u001b[39m \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3"]
|
||||
[187.526483, "o", "6;27H\u001b[34h\u001b[?25h"]
|
||||
[188.029107, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[188.029392, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[188.029626, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[188.029728, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[188.029778, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H: \u001b[38;5;33mconsole.view.flow\u001b[38;5;245m @focus\u001b[39m \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b"]
|
||||
[188.0301, "o", "[m\u000f\u001b[34h\u001b[?25h\u001b[36;27H"]
|
||||
[188.034238, "o", "\u001b[?25l\u001b[38;5;231m\u001b[48;5;68m\u001b[H The argument `@focus` defines the target flow. \u001b[m\u000f\u001b[36;27H"]
|
||||
[191.718565, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[191.718672, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[191.718898, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[191.719136, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[191.719329, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H: \u001b[38;5;33mconsole.view.flow\u001b[38;5;245m @focus\u001b[39m \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3"]
|
||||
[191.719535, "o", "6;27H\u001b[34h\u001b[?25h"]
|
||||
[192.223376, "o", "\u001b[?25l\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[192.223658, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[192.223879, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[192.224073, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[192.22427, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H: \u001b[38;5;33mconsole.view.flow\u001b[38;5;245m @focus\u001b[39m \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b"]
|
||||
[192.224346, "o", "[m\u000f\u001b[34h\u001b[?25h\u001b[36;27H"]
|
||||
[192.228362, "o", "\u001b[?25l\u001b[38;5;231m\u001b[48;5;68m\u001b[H Press `ENTER` to execute the command. \u001b[m\u000f\u001b[36;27H"]
|
||||
[195.188222, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlows \u001b[49m\u001b[38;5;245m\u001b[4;1H>>16:34:26\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mDunedin\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[5;1H \u001b[38;5;245m16:34:34\u001b[39m \u001b[36mHTTP \u001b[39m \u001b[38;5;64mGET \u001b[39m \u001b[38;5;245m \u001b[38;5;96mwttr\u001b[38;5;245m.\u001b[38;5;252min\u001b[39m \u001b[38;5;242m/\u001b[38;5;132mInnsbruck\u001b[38;5;242m?\u001b[38;5;37m0\u001b[38;5;245m \u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;245m text/plain\u001b[39m \u001b[38;5;47m 330b\u001b[39m \u001b[38;5;190m343ms\u001b[39m \u001b[6;1H "]
|
||||
[195.188493, "o", " \u001b[7;1H \u001b[8;1H \u001b[9;1H \u001b[10;1H \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H "]
|
||||
[195.188654, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[195.188837, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[195.188899, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H: \u001b[38;5;33mconsole.view.flow\u001b[38;5;245m @focus\u001b[39m \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3"]
|
||||
[195.189051, "o", "6;27H\u001b[34h\u001b[?25h"]
|
||||
[195.706203, "o", "\u001b[3;1H\u001b[38;5;254m\u001b[48;5;240mFlow Details \u001b[4;1H\u001b[49m\u001b[38;5;240m2020-09-04 16:34:26\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;245mhttp://wttr.in/Dunedin?0\u001b[39m \u001b[5;1H \u001b[38;5;64m←\u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;64mOK\u001b[39m \u001b[38;5;245mtext/plain\u001b[39m \u001b[38;5;47m386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[6;1H\u001b[38;5;254m\u001b[48;5;240m Request \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[7;1H\u001b[49m\u001b[38;5;33mHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m \u001b[8;1H\u001b[38;5;33mUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m "]
|
||||
[195.706309, "o", " \u001b[9;1H\u001b[38;5;33mAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m \u001b[10;1H\u001b[38;5;33mProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[11;1H\u001b[38;5;254m\u001b[48;5;240mQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[12;1H\u001b[49m\u001b[38;5;33m0: \u001b[39m \u001b[36;1H \u001b[?25l\r \u001b[36;119H "]
|
||||
[195.745678, "o", "\u001b[3;1H"]
|
||||
[196.092002, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:34:26\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;245mhttp://wttr.in/Dunedin?0\u001b[39m \u001b[5;1H \u001b[38;5;64m←\u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;64mOK\u001b[39m \u001b[38;5;245mtext/plain\u001b[39m \u001b[38;5;47m386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m "]
|
||||
[196.092099, "o", " \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m \u001b[13;1H \u001b[14;1H "]
|
||||
[196.092321, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[196.092548, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[196.092898, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[196.096535, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H Commands unleash the full power of mitmproxy, i.e., to configure interceptions. \u001b[m\u000f\u001b[3;1H"]
|
||||
[202.421702, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:34:26\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;245mhttp://wttr.in/Dunedin?0\u001b[39m \u001b[5;1H \u001b[38;5;64m←\u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;64mOK\u001b[39m \u001b[38;5;245mtext/plain\u001b[39m \u001b[38;5;47m386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m "]
|
||||
[202.421805, "o", " \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m \u001b[13;1H \u001b[14;1H "]
|
||||
[202.422237, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[202.422474, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[202.422781, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[202.925857, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:34:26\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;245mhttp://wttr.in/Dunedin?0\u001b[39m \u001b[5;1H \u001b[38;5;64m←\u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;64mOK\u001b[39m \u001b[38;5;245mtext/plain\u001b[39m \u001b[38;5;47m386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m "]
|
||||
[202.925972, "o", " \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m \u001b[13;1H \u001b[14;1H "]
|
||||
[202.926307, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[202.9265, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[202.926724, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[202.930294, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H You now know basics of mitmproxy’s UI and how to control it. \u001b[m\u000f\u001b[3;1H"]
|
||||
[207.724797, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:34:26\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;245mhttp://wttr.in/Dunedin?0\u001b[39m \u001b[5;1H \u001b[38;5;64m←\u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;64mOK\u001b[39m \u001b[38;5;245mtext/plain\u001b[39m \u001b[38;5;47m386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m "]
|
||||
[207.724911, "o", " \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m \u001b[13;1H \u001b[14;1H "]
|
||||
[207.725136, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[207.725367, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[207.725556, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[209.241747, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:34:26\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;245mhttp://wttr.in/Dunedin?0\u001b[39m \u001b[5;1H \u001b[38;5;64m←\u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;64mOK\u001b[39m \u001b[38;5;245mtext/plain\u001b[39m \u001b[38;5;47m386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m "]
|
||||
[209.242039, "o", " \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m \u001b[13;1H \u001b[14;1H "]
|
||||
[209.242251, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[209.242329, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[209.24274, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
||||
[209.246491, "o", "\u001b[38;5;231m\u001b[48;5;68m\u001b[H In the next lesson you will learn to intercept flows. \u001b[m\u000f\u001b[3;1H"]
|
||||
[213.486105, "o", "\u001b[38;5;231m\u001b[2;3H Terminal Window 1 -------------------------------------------------------------------------------------------------\u001b[H\r\n--\u001b[116C--\u001b[38;5;254m\u001b[48;5;240m\u001b[3;1HFlow Details \u001b[49m\u001b[38;5;240m\u001b[4;1H2020-09-04 16:34:26\u001b[39m \u001b[38;5;64mGET\u001b[39m \u001b[38;5;245mhttp://wttr.in/Dunedin?0\u001b[39m \u001b[5;1H \u001b[38;5;64m←\u001b[39m \u001b[38;5;64m200\u001b[39m \u001b[38;5;64mOK\u001b[39m \u001b[38;5;245mtext/plain\u001b[39m \u001b[38;5;47m386b\u001b[39m \u001b[38;5;118m193ms\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[6;1H Request \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Response \u001b[39m\u001b[49m \u001b[38;5;245m\u001b[48;5;235m Detail \u001b[49m\u001b[38;5;33m\u001b[7;1HHost:\u001b[39m \u001b[38;5;245mwttr.in\u001b[39m "]
|
||||
[213.486209, "o", " \u001b[38;5;33m\u001b[8;1HUser-Agent:\u001b[39m \u001b[38;5;245mcurl/7.58.0\u001b[39m \u001b[38;5;33m\u001b[9;1HAccept:\u001b[39m \u001b[38;5;245m*/*\u001b[39m \u001b[38;5;33m\u001b[10;1HProxy-Connection:\u001b[39m \u001b[38;5;245mKeep-Alive\u001b[39m \u001b[38;5;254m\u001b[48;5;240m\u001b[11;1HQuery [\u001b[38;5;33m\u001b[1mm\u001b[m\u000f\u001b[38;5;254m\u001b[48;5;240m:auto]\u001b[49m\u001b[38;5;33m\u001b[12;1H0: \u001b[39m \u001b[13;1H \u001b[14;1H "]
|
||||
[213.486425, "o", " \u001b[15;1H \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H "]
|
||||
[213.48663, "o", " \u001b[23;1H \u001b[24;1H \u001b[25;1H \u001b[26;1H \u001b[27;1H \u001b[28;1H \u001b[29;1H \u001b[30;1H "]
|
||||
[213.486827, "o", " \u001b[31;1H \u001b[32;1H \u001b[33;1H \u001b[34;1H \u001b[38;5;254m\u001b[48;5;240m\u001b[35;1H⇩ [1/2] [*:8080]\u001b[39m\u001b[49m\u001b[36;1H \u001b[38;5;231m\u001b[48;5;16m\u001b[1;1H \u001b[m\u000f\u001b[3;1H"]
|
@ -0,0 +1,142 @@
|
||||
[
|
||||
{
|
||||
"instruction": "1. Welcome to the mitmproxy tutorial. In this lesson we cover the user interface.",
|
||||
"time_from": 0.0,
|
||||
"time_to": 6.2
|
||||
},
|
||||
{
|
||||
"instruction": "2. This is the default view of mitmproxy.",
|
||||
"time_from": 14.6,
|
||||
"time_to": 17.6
|
||||
},
|
||||
{
|
||||
"instruction": "3. mitmproxy adds rows to the view as new requests come in.",
|
||||
"time_from": 18.2,
|
||||
"time_to": 22.7
|
||||
},
|
||||
{
|
||||
"instruction": "4. Let’s generate some requests using `curl` in a separate terminal.",
|
||||
"time_from": 23.2,
|
||||
"time_to": 28.4
|
||||
},
|
||||
{
|
||||
"instruction": "5. Use curl’s `--proxy` option to configure mitmproxy as a proxy.",
|
||||
"time_from": 31.8,
|
||||
"time_to": 36.8
|
||||
},
|
||||
{
|
||||
"instruction": "6. We use the text-based weather service `wttr.in`.",
|
||||
"time_from": 46.1,
|
||||
"time_to": 49.9
|
||||
},
|
||||
{
|
||||
"instruction": "7. You see the requests to `wttr.in` in the list of flows.",
|
||||
"time_from": 72.6,
|
||||
"time_to": 77.0
|
||||
},
|
||||
{
|
||||
"instruction": "8. mitmproxy is controlled using keyboard shortcuts.",
|
||||
"time_from": 77.5,
|
||||
"time_to": 81.4
|
||||
},
|
||||
{
|
||||
"instruction": "9. Use your arrow keys `↑` and `↓` to change the focused flow (`>>`).",
|
||||
"time_from": 81.9,
|
||||
"time_to": 87.2
|
||||
},
|
||||
{
|
||||
"instruction": "10. The focused flow (`>>`) is used as a target for various commands.",
|
||||
"time_from": 90.6,
|
||||
"time_to": 95.8
|
||||
},
|
||||
{
|
||||
"instruction": "11. One such command shows the flow details, it is bound to `ENTER`.",
|
||||
"time_from": 96.4,
|
||||
"time_to": 101.5
|
||||
},
|
||||
{
|
||||
"instruction": "12. Press `ENTER` to view the details of the focused flow.",
|
||||
"time_from": 102.0,
|
||||
"time_to": 106.3
|
||||
},
|
||||
{
|
||||
"instruction": "13. The flow details view has 3 panes: request, response, and detail.",
|
||||
"time_from": 107.1,
|
||||
"time_to": 112.3
|
||||
},
|
||||
{
|
||||
"instruction": "14. Use your arrow keys `←` and `→` to switch between panes.",
|
||||
"time_from": 112.8,
|
||||
"time_to": 117.3
|
||||
},
|
||||
{
|
||||
"instruction": "15. Press `q` to exit the current view.",
|
||||
"time_from": 130.7,
|
||||
"time_to": 133.5
|
||||
},
|
||||
{
|
||||
"instruction": "16. Press `?` to get a list of all available keyboard shortcuts.",
|
||||
"time_from": 134.1,
|
||||
"time_to": 138.9
|
||||
},
|
||||
{
|
||||
"instruction": "17. Tip: Remember the `?` shortcut. It works in every view.",
|
||||
"time_from": 148.2,
|
||||
"time_to": 152.6
|
||||
},
|
||||
{
|
||||
"instruction": "18. Press `q` to exit the current view.",
|
||||
"time_from": 153.1,
|
||||
"time_to": 155.9
|
||||
},
|
||||
{
|
||||
"instruction": "19. Each shortcut is internally bound to a command.",
|
||||
"time_from": 156.7,
|
||||
"time_to": 160.5
|
||||
},
|
||||
{
|
||||
"instruction": "20. You can also execute commands directly (without using shortcuts).",
|
||||
"time_from": 160.9,
|
||||
"time_to": 166.1
|
||||
},
|
||||
{
|
||||
"instruction": "21. Press `:` to open the command prompt at the bottom.",
|
||||
"time_from": 166.7,
|
||||
"time_to": 170.8
|
||||
},
|
||||
{
|
||||
"instruction": "22. Enter `console.view.flow @focus`.",
|
||||
"time_from": 171.4,
|
||||
"time_to": 174.0
|
||||
},
|
||||
{
|
||||
"instruction": "23. The command `console.view.flow` opens the details view for a flow.",
|
||||
"time_from": 181.0,
|
||||
"time_to": 186.3
|
||||
},
|
||||
{
|
||||
"instruction": "24. The argument `@focus` defines the target flow.",
|
||||
"time_from": 186.8,
|
||||
"time_to": 190.5
|
||||
},
|
||||
{
|
||||
"instruction": "25. Press `ENTER` to execute the command.",
|
||||
"time_from": 191.0,
|
||||
"time_to": 194.0
|
||||
},
|
||||
{
|
||||
"instruction": "26. Commands unleash the full power of mitmproxy, i.e., to configure interceptions.",
|
||||
"time_from": 194.8,
|
||||
"time_to": 201.1
|
||||
},
|
||||
{
|
||||
"instruction": "27. You now know basics of mitmproxy’s UI and how to control it.",
|
||||
"time_from": 201.7,
|
||||
"time_to": 206.5
|
||||
},
|
||||
{
|
||||
"instruction": "28. In the next lesson you will learn to intercept flows.",
|
||||
"time_from": 208.0,
|
||||
"time_to": 212.2
|
||||
}
|
||||
]
|
@ -17,6 +17,17 @@
|
||||
{{ $style := resources.Get "style.scss" | toCSS | minify }}
|
||||
<link rel="stylesheet" href="{{ $style.Permalink }}">
|
||||
|
||||
{{ if .Params.has_asciinema }}
|
||||
{{- $styles := resources.Get "asciinema-player.css" | minify | fingerprint }}
|
||||
<link rel="stylesheet" href="{{ $styles.Permalink }}" integrity="{{ $styles.Data.Integrity }}" media="screen">
|
||||
|
||||
{{- $styles := resources.Get "asciinema-player.js" | minify | fingerprint }}
|
||||
<script src="{{ $styles.Permalink }}" integrity="{{ $styles.Data.Integrity }}"></script>
|
||||
|
||||
{{- $styles := resources.Get "asciinema-tutorial.js" | minify | fingerprint }}
|
||||
<script src="{{ $styles.Permalink }}" integrity="{{ $styles.Data.Integrity }}"></script>
|
||||
{{ end }}
|
||||
|
||||
{{ range .AlternativeOutputFormats -}}
|
||||
{{ printf `<link rel="%s" type="%s" href="%s" title="%s" />` .Rel .MediaType.Type .Permalink $.Site.Title | safeHTML }}
|
||||
{{ end -}}
|
||||
|
Loading…
Reference in New Issue
Block a user