2015-09-04 14:17:55 +00:00
|
|
|
.. _libmproxy:
|
|
|
|
|
|
|
|
libmproxy
|
|
|
|
=========
|
|
|
|
|
|
|
|
.. note::
|
|
|
|
|
2015-09-06 01:20:58 +00:00
|
|
|
We strongly encourage you to use :ref:`inlinescripts` rather than libmproxy.
|
2015-09-04 14:17:55 +00:00
|
|
|
- Inline Scripts are equally powerful and provide an easier syntax.
|
|
|
|
- Most examples are written as inline scripts.
|
|
|
|
- Multiple inline scripts can be used together.
|
|
|
|
- Inline Scripts can either be executed headless with mitmdump or within the mitmproxy UI.
|
|
|
|
|
|
|
|
|
|
|
|
All of mitmproxy's basic functionality is exposed through the **libmproxy**
|
|
|
|
library. The example below shows a simple implementation of the "sticky cookie"
|
|
|
|
functionality included in the interactive mitmproxy program. Traffic is
|
|
|
|
monitored for ``Cookie`` and ``Set-Cookie`` headers, and requests are rewritten
|
|
|
|
to include a previously seen cookie if they don't already have one. In effect,
|
|
|
|
this lets you log in to a site using your browser, and then make subsequent
|
|
|
|
requests using a tool like curl, which will then seem to be part of the
|
|
|
|
authenticated session.
|
|
|
|
|
|
|
|
|
|
|
|
.. literalinclude:: ../../examples/stickycookies
|
|
|
|
:caption: examples/stickycookies
|
|
|
|
:language: python
|