Edgegrid plugin for HTTPie.
Project description
# httpie-edgegrid
EdgeGrid plugin for [HTTPie](https://github.com/jkbr/httpie).
## Installation
To install from sources:
` bash $ python setup.py install `
When using python 3 on Mac, replace python with python3:
` bash $ python3 setup.py install `
If you have problems installing from sources, you could use pip:
` bash $ pip install httpie-edgegrid `
## Running tests in virtual environment
To test in a [virtual environment](https://packaging.python.org/tutorials/installing-packages/#creating-virtual-environments), run:
` bash $ python3 -m venv venv $ . venv/bin/activate $ pip install -r requirements_dev.txt $ python -m unittest discover `
## Usage
The EdgeGrid plugin relies on a .edgerc credentials file that needs to be created in your home directory and organized by [section] following the format below. Each [section] can contain a different credentials set allowing you to store all of your credentials in a single .edgerc file.
` [default] client_secret = xxxx host = xxxx # Note, don't include the https:// here access_token = xxxx client_token = xxxx max-body = xxxx [section1] client_secret = xxxx host = xxxx # Note, don't include the https:// here access_token = xxxx client_token = xxxx max-body = xxxx `
Once you have the credentials set up, here is an example of what an Akamai OPEN API call would look like:
` bash % http --auth-type edgegrid -a <section_name>: :/<api_endpoint> `
### Example
Making the diagnostic-tools API [locations]{.title-ref} call:
` bash % http --auth-type edgegrid -a default: :/edge-diagnostics/v1/edge-locations `
## Parameters
–edgegrid-config
Path to .edgerc credentials file (optional, defaults to ~/.edgerc)
## Environment variables
RC_PATH
Path to .edgerc credentials file (optional, equivalent to the –edgegrid-config parameter)
## Troubleshooting
MacOS Sierra users have reported the error "http: error: argument --auth-type/-A: invalid choice: 'edgegrid' (choose from 'basic', 'digest')" after installation. Try installing using pip instead.
The error "ImportError: ‘pyOpenSSL’ module missing required functionality. Try upgrading to v0.14 or newer" requires you to install an updated version of `pyOpenSSL`:
` bash $ pip install --ignore-installed pyOpenSSL `
Since v0.9.4 of httpie the Mac homebrew package is build with python3. If you get an error for "ImportError: No module named cryptography" then probably you installed httpie-edgegrid with python2.7 (unsupported). To explicitly install with python3 use:
` bash $ sudo python3 setup.py install `
Or with pip3:
` bash $ sudo pip3 install httpie-edgegrid `
## Advisories
Starting with HTTPie version 2.3.0 uploads are streamed, causing an issue posting JSON payloads as those don't include a content-length causing an error with the [Edgegrid authentication libraries](https://github.com/akamai/AkamaiOPEN-edgegrid-python). See [Issue #49](https://github.com/akamai/AkamaiOPEN-edgegrid-python/issues/49) for more details
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 Distributions
Built Distribution
File details
Details for the file httpie_edgegrid-2.1.4-py3-none-any.whl
.
File metadata
- Download URL: httpie_edgegrid-2.1.4-py3-none-any.whl
- Upload date:
- Size: 9.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.12.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 639b5f3c333fe2ec5eaa7c32811a8610341895777cb8c835f1f8feedf410c6ef |
|
MD5 | 81c15bb52080c257cc28fc7ae7a4cf05 |
|
BLAKE2b-256 | 551f66f94eaf910aa8d6a0b357835b028aae32baceba10ecc483d0716506c5a6 |