APIs HTTP
See in scheduleAbstract
This training will introduce beginners to REST API and
the OpenAPI specification, and shows how to use
a contract-first approach to easily write python apis.
After a theoretical introduction explaining REST and RPC, and
the benefit of OpenAPI 3, we will write different APIs,
implementing features like:
- basic and jwt authentication;
- throttling headers;
- storing files and related metadata;
- request/response validation;
- service management;
All the work will be done via the connexion framework.
Agenda:
- REST vs RPC APIs
- Contract first and Code-First
- OpenAPI v3: describing APIs metadata and technical specs
- Connexion, an OpenAPI framework for python
- My first REST API with connexion
- Adding features: basic and JWT authentication
- Add throttling and service management;
- Request/Response validation
- A file-store REST API
Strategy:
Theoretical intro is based on slides.
I'll provide digitalocean vms, docker images and ansible playbook to help students
to setup their environment.
Code and Notebooks:
Just clone this directory and `make dev` on your local dockerized machine,
or use the digitalocean ansible playbook.
- https://github.com/ioggstream/python-course/tree/master/connexion-101
Type: Training (180 mins); Python level: Beginner; Domain level: Beginner
Roberto joined in the [Italian Digital Transformation Team](https://teamdigitale.governo.it/en/49-content.htm) - to work on the new interoperability framework which introduces an API Ecosystem.
He's a Red Hat Certified Engineer and MySQL/MongoDB certified dba, but loves maintaining free software.
A life ago he took a Math degree, and he's really proud of it.