diff options
Diffstat (limited to 'doc-src/scripts.html')
-rw-r--r-- | doc-src/scripts.html | 48 |
1 files changed, 40 insertions, 8 deletions
diff --git a/doc-src/scripts.html b/doc-src/scripts.html index 2514923e..990ca070 100644 --- a/doc-src/scripts.html +++ b/doc-src/scripts.html @@ -1,14 +1,46 @@ -Both __mitmproxy__ and __mitmdump__ allow you to modify requests and responses -with external scripts. This is often done through the __--reqscript__ and -__--respscript__ options +__mitmproxy__ has a powerful event-drive scripting API, that allows you to +modify flows on-the-fly or rewrite previously saved flows locally. + + +## Events + +<table> + <tr> + <td>start(ctx)</td> + <td>Called once on startup, before any other events.</td> + </tr> + <tr> + <td>clientconnect(ctx, ClientConnect)</td> + <td>Called when a client initiates a connection to the proxy. Note that + a connection can correspond to multiple HTTP requests.</td> + </tr> + <tr> + <td>request(ctx, Flow)</td> + <td>Called when a client request has been received.</td> + </tr> + <tr> + <td>response(ctx, Flow)</td> + <td>Called when a server response has been received.</td> + </tr> + <tr> + <td>error(ctx, Flow)</td> + <td>Called when a flow error has occured, e.g. invalid server + responses, or interrupted connections. This is distinct from a valid + server HTTP error response, which is simply a response with an HTTP + error code. </td> + </tr> + <tr> + <td>clientdisconnect(ctx, ClientDisconnect)</td> + <td>Called when a client disconnects from the proxy.</td> + </tr> + <tr> + <td>done(ctx)</td> + <td>Called once on script shutdown, after any other events.</td> + </tr> +</table> -The script interface is simple - scripts simply read, -modify and return a single __libmproxy.flow.Flow__ object, using the methods -defined in the __libmproxy.script__ module. Scripts must be executable. - -!example("examples/simple_script")!$ |