Python je moćan programski jezik. Ima mnogo knjižnica za izgradnju REST ili RESTful API-ja. Jedna od popularnih knjižnica za izradu web aplikacija i pisanje REST API-ja je Tikvica.
U ovom članku pokazat ću vam kako stvoriti REST API u Pythonu pomoću Flaska. Započnimo.
Zahtjevi:
Trebao bi imati
- Python 2 ili Python 3 instaliran na vašem računalu.
- PIP ili PIP3 instaliran na vašem računalu.
- Osnovno razumijevanje programskog jezika Python.
- Osnovno razumijevanje izvršavanja naredbi u ljusci.
Na LinuxHintu biste trebali moći pronaći članke i vodiče o svim tim temama.com
U ovom ću članku koristiti Python 3 na Debian 9 Stretchu. Ako koristite Python 2, morat ćete se malo prilagoditi. Morali biste to sami shvatiti jer će to biti jednostavno poput pisanja piton umjesto python3 i pip umjesto pip3.
Postavljanje virtualnog okruženja:
Pojednostavljeno rečeno, virtualno okruženje koristi se za izoliranje jedne Python aplikacije od druge. Paket Python koji je to radio je virtualenv.
Možete jednostavno instalirati virtualenv pomoću PIP-a na računalu sa sljedećom naredbom:
$ sudo -H pip3 instaliraj virtualenvSada izradite direktorij projekta (nazovimo ga pirest /) sa sljedećom naredbom:
$ mkdir pirestSada stvorite Python virtualno okruženje na pirest / direktorij projekta sa sljedećom naredbom:
$ virtualenv pyrest /Sada idite u direktorij projekta pomoću sljedeće naredbe:
$ cd pijerestZatim aktivirajte virtualno okruženje Python sljedećom naredbom:
$ source bin / aktivirajNa kraju, pokrenite sljedeću naredbu za instalaciju knjižnice Flask Python:
$ bin / pip3 instalacijska tikvicaPisanje vaše prve skripte za tikvicu:
U ovom ću odjeljku napisati zdravi svjetski program na Python Flasku.
Prvo stvorite datoteku zdravo.py u direktoriju vašeg projekta:
$ dodir zdravo.pySada dodajte sljedeće retke u zdravo.py datoteku i spremite je.
U sljedećem odjeljku pokazat ću vam kako pokretati Flask skripte.
Pokretanje skripte tikvice:
Sada za početak zdravo.py Poslužitelj tikvice, pokrenite sljedeću naredbu:
$ bin / python3 pozdrav.pyKao što vidite, poslužitelj je pokrenut http: // 127.0.0.1: 8080.
Sada možete pristupiti poslužitelju tikvice http: // 127.0.0.1: 8080 iz web preglednika ili softvera za testiranje API-ja poput Postmana. Koristit ću CURL.
$ curl http: // 127.0.0.1: 8080Kao što vidite, ispis se ispisuje na zaslonu.
Čestitamo! Čutura radi.
Pristup podacima pomoću GET-a u REST API-ju:
GET zahtjev za REST API koristi se za dohvaćanje podataka s API poslužitelja. Postavljate neke API krajnje točke i na toj završnoj točki podnosite GET zahtjev. Jednostavno je.
Prvo stvorite novu datoteku dobiti.py u vašem direktoriju projekta sljedećom naredbom:
$ dodir dobiti.pySada dodajte sljedeće retke u svoj dobiti.py datoteku i spremite je.
Ovdje, u retku 1, Tikvica funkcija konstruktora i jsonificirati funkcija se uvozi iz modula tikvice.
Na liniji 3, a Tikvica objekt je stvoren i pohranjen na app varijabilna.
U retku 5 stvorio sam Python niz rječnika nekih lažnih podataka i spremio ih u računi varijabilna.
U retku 10 definirao sam krajnju točku API-ja / računi i metoda zahtjeva koja je DOBITI.
U retku 11 definirao sam funkciju getAccounts (). getAccounts () funkcija će se izvršiti kada GET zahtjev za / računi napravljena je krajnja točka.
Redak 12, koji je dio getAccounts () funkciju, pretvorio sam računi niz rječnika za JSON pomoću jsonify () funkciju i vratio je.
Na liniji 14-15 nazvao sam app.trčanje() da kaže Flasku da pokrene API poslužitelj na priključku 8080.
Sada pokrenite Flask API poslužitelj sa sljedećom naredbom:
$ bin / python3 dobiti.pyPoslužitelj je započeo na priključku 8080.
Sada podnesite GET zahtjev za / računi krajnja točka s CURL kako slijedi:
$ curl http: // 127.0.0.1: 8080 / računiKao što vidite, podaci o računima prikazuju se u JSON formatu na GET zahtjev / računi krajnja točka.
Također možete dobiti određene podatke o računu. Da bih to učinio, stvorit ću drugu API krajnju točku /račun/
Uredite dobiti.py skriptu i dodajte joj označene retke.
Ovdje sam u retku 14 definirao API krajnju točku /račun/
Na liniji 15-17, funkcija getAccount () za krajnju točku API-ja /račun/
Na liniji 16, iskaznica varijabla se pretvara u cijeli broj. Također sam zaključio 1 iz iskaznica varijabilna. Budući da indeks niza počinje od 0. Želim započeti ID računa od 1. Pa ako stavim 1 kao račun
Na liniji 17, niz s indeksom
Ostali kodovi su isti.
Sada ponovo pokrenite API poslužitelj.
$ bin / python3 dobiti.py
Podatke za račune 1 i 2 zatražio sam odvojeno i dobio sam očekivani izlaz, kao što možete vidjeti sa snimke zaslona u nastavku.
$ curl http: // 127.0.0.1: 8080 / račun / 1$ curl http: // 127.0.0.1: 8080 / račun / 2
Dodavanje podataka pomoću POST-a u REST API:
Sad ću preimenovati dobiti.py do api.py i dodajte API krajnju točku /račun za dodavanje novih podataka.
Preimenovati dobiti.py do api.py:
$ mv -v dobiti.py api.pyPrvo dodajte retke (19-26) kako je označeno na snimci zaslona u nastavku na api.py datoteka.
Sada pokrenite api.py poslužitelj:
$ bin / python3 api.py
Za umetanje novih podataka u /račun krajnja točka, pokrenite sljedeću naredbu:
$ curl -X POST -H "Content-Type: application / json" -d '"name": "Shovon", "balance": 100'http: // 127.0.0.1: 8080 / račun
BILJEŠKA: Ovdje, '"Ime": "Shovon", "stanje": 100' je JSON ulazni podatak.
Treba umetnuti podatke.
Kao što vidite, dodani su novi podaci.
To je to za ovaj članak. Hvala što ste pročitali ovaj članak.