File: README.rst

package info (click to toggle)
mozjs78 78.4.0-2
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 735,652 kB
  • sloc: javascript: 1,344,159; cpp: 1,215,333; python: 507,802; ansic: 433,822; xml: 118,736; sh: 26,179; asm: 16,703; makefile: 11,545; yacc: 4,486; perl: 2,564; ada: 1,681; lex: 1,414; pascal: 1,139; cs: 879; exp: 499; java: 164; ruby: 68; sql: 45; csh: 35; sed: 18; lisp: 2
file content (62 lines) | stat: -rw-r--r-- 1,874 bytes parent folder | download | duplicates (17)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
requests-unixsocket
===================

.. image:: https://pypip.in/version/requests-unixsocket/badge.svg?style=flat
    :target: https://pypi.python.org/pypi/requests-unixsocket/
    :alt: Latest Version

.. image:: https://travis-ci.org/msabramo/requests-unixsocket.svg?branch=master
    :target: https://travis-ci.org/msabramo/requests-unixsocket

Use `requests <http://docs.python-requests.org/>`_ to talk HTTP via a UNIX domain socket

Usage
-----

Explicit
++++++++

You can use it by instantiating a special ``Session`` object:

.. code-block:: python

    import requests_unixsocket

    session = requests_unixsocket.Session()

    # Access /path/to/page from /tmp/profilesvc.sock
    r = session.get('http+unix://%2Ftmp%2Fprofilesvc.sock/path/to/page')
    assert r.status_code == 200

Implicit (monkeypatching)
+++++++++++++++++++++++++

Monkeypatching allows you to use the functionality in this module, while making
minimal changes to your code. Note that in the above example we had to
instantiate a special ``requests_unixsocket.Session`` object and call the
``get`` method on that object. Calling ``requests.get(url)`` (the easiest way
to use requests and probably very common), would not work. But we can make it
work by doing monkeypatching.

You can monkeypatch globally:

.. code-block:: python

    import requests_unixsocket

    requests_unixsocket.monkeypatch()

    # Access /path/to/page from /tmp/profilesvc.sock
    r = requests.get('http+unix://%2Ftmp%2Fprofilesvc.sock/path/to/page')
    assert r.status_code == 200

or you can do it temporarily using a context manager:

.. code-block:: python

    import requests_unixsocket

    with requests_unixsocket.monkeypatch():
        # Access /path/to/page from /tmp/profilesvc.sock
        r = requests.get('http+unix://%2Ftmp%2Fprofilesvc.sock/path/to/page')
        assert r.status_code == 200