Use requests to talk HTTP via a UNIX domain socket
Project description
requests-unixsocket
===================
.. 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 :class:`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
===================
.. 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 :class:`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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Close
Hashes for requests-unixsocket-0.1.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | aa2d4772e188b93da5d9b8f25c3bd92a8ed85afefb9bd8083f87580e2233def7 |
|
MD5 | f4718d70f0b4e2303459693a252bf871 |
|
BLAKE2b-256 | af0b66d2c7cfd63f2b7032fc31fe1cf00785ad7f4ade55c853b7fe6abfe4fb33 |