„Python“ yra galinga programavimo kalba. Jame yra daug bibliotekų, skirtų REST arba RESTful API kurti. Viena iš populiarių žiniatinklio programų kūrimo ir REST API rašymo bibliotekų yra Kolba.
Šiame straipsnyje aš jums parodysiu, kaip sukurti „REST“ API „Python“ naudojant kolbą. Pradėkime.
Reikalavimai:
Turėtum turėt
- „Python 2“ arba „Python 3“ įdiegta jūsų kompiuteryje.
- PIP arba PIP3 įdiegtas jūsų kompiuteryje.
- Pagrindinis Python programavimo kalbos supratimas.
- Pagrindinis supratimas apie komandų vykdymą apvalkale.
„LinuxHint“ turėtumėte sugebėti rasti straipsnių ir vadovėlių visomis šiomis temomis.com
Šiame straipsnyje naudosiu „Python 3“ „Debian 9 Stretch“. Jei naudojate „Python 2“, turėsite šiek tiek prisitaikyti. Turėtumėte sugebėti tai išsiaiškinti patys, nes tai bus paprasta, kaip rašyti pitonas vietoj pitonas3 ir pip vietoj pip3.
Virtualios aplinkos nustatymas:
Paprasčiau tariant, virtuali aplinka naudojama izoliuoti vieną „Python“ programą nuo kitos. Tam naudojamas „Python“ paketas virtualenv.
Galite lengvai įdiegti virtualenv naudojant PIP kompiuteryje su šia komanda:
$ sudo -H pip3 įdiekite virtualenvDabar sukurkite projekto katalogą (pavadinkime jį pirestas /) su tokia komanda:
$ mkdir pyrestDabar sukurkite virtualią „Python“ aplinką pirestas / projekto katalogas su šia komanda:
$ virtualenv pyrest /Dabar eikite į projekto katalogą naudodami šią komandą:
$ cd pirestasTada suaktyvinkite virtualią „Python“ aplinką naudodami šią komandą:
$ source bin / aktyvuotiGaliausiai paleiskite šią komandą, kad įdiegtumėte „Flask Python“ biblioteką:
$ bin / pip3 įdėklo kolbaPirmo kolbos scenarijaus rašymas:
Šiame skyriuje aš parašysiu „Hello world“ programą „Python Flask“.
Pirmiausia sukurkite failą Sveiki.py savo projekto kataloge:
$ touch labas.pyDabar pridėkite šias eilutes Sveiki.py failą ir išsaugokite jį.
Kitame skyriuje parodysiu, kaip paleisti „Flask“ scenarijus.
Veikiantis kolbos scenarijus:
Dabar pradėti Sveiki.py Kolbos serveris, vykdykite šią komandą:
Sveiki, $ bin / python3.pyKaip matote, serveris pradėjo veikti http: // 127.0.0.1: 8080.
Dabar galite prisijungti prie kolbos serverio http: // 127.0.0.1: 8080 iš žiniatinklio naršyklės arba API testavimo programinės įrangos, tokios kaip „Postman“. Aš ketinu naudoti CURL.
$ garbanė http: // 127.0.0.1: 8080Kaip matote, ekrane atspausdinama teisinga išvestis.
Sveikinimai! Kolba veikia.
Prieiga prie duomenų naudojant GET REST API:
GET užklausa dėl REST API naudojama norint gauti informaciją iš API serverio. Jūs nustatote keletą API galinių taškų ir atliekate GET užklausą tame galiniame taške. Tai paprasta.
Pirmiausia sukurkite naują failą gauti.py projekto kataloge naudodami šią komandą:
$ touch gauti.pyDabar pridėkite šias eilutes savo gauti.py failą ir išsaugokite jį.
Čia, 1 eilutėje, Kolba konstruktoriaus funkcija ir jsonify funkcija importuojama iš kolbos modulio.
3 eilutėje a Kolba objektas yra sukurtas ir saugomas programa kintamasis.
5 eilutėje sukūriau Python masyvą kai kurių manekeno duomenų žodynų ir išsaugojau sąskaitos kintamasis.
10 eilutėje aš apibrėžiau API galinį tašką / sąskaitos ir prašymo metodas, kuris yra GAUTI.
11 eilutėje aš apibrėžiau funkciją „getAccounts“ (). „getAccounts“ () funkcija bus vykdoma, kai GET užklausą / sąskaitos padarytas galutinis taškas.
12 eilutė, kuri yra dalis „getAccounts“ () funkciją, aš konvertuoju sąskaitos žodynų masyvas JSON naudojant jsonify () funkciją ir ją grąžino.
14-15 eilutėje paskambinau programa.paleisti () liepti kolbai paleisti API serverį uoste 8080 m.
Dabar paleiskite „Flask API“ serverį naudodami šią komandą:
$ bin / python3 gauti.pyServeris paleistas 8080 prievade.
Dabar pateikite GET užklausą / sąskaitos galutinis taškas su CURL taip:
$ garbanė http: // 127.0.0.1: 8080 / sąskaitosKaip matote, sąskaitų duomenys rodomi kaip JSON formatas GET užklausoje / sąskaitos galutinis taškas.
Taip pat galite gauti konkrečius sąskaitos duomenis. Norėdami tai padaryti, aš ketinu sukurti kitą API galinį tašką / account /
Redaguokite gauti.py scenarijų ir prie jo pridėkite pažymėtas eilutes.
Čia, 14 eilutėje, aš apibrėžiau API galinį tašką / account /
15-17 eilutėje funkcija getAccount () API galutiniam taškui / account /
16 eilutėje id kintamasis konvertuojamas į sveiką skaičių. Taip pat išvedžiau 1 id kintamasis. Mat masyvo indeksas prasideda nuo 0. Noriu pradėti paskyros ID nuo 1. Taigi, jei kaip sąskaitą įrašysiu 1
17 eilutėje masyvas prie indekso
Likę kodai yra vienodi.
Dabar dar kartą paleiskite API serverį.
$ bin / python3 gauti.py
Aš paprašiau duomenų apie 1 ir 2 paskyras atskirai ir gavau laukiamą rezultatą, kaip matote iš žemiau pateikto ekrano.
$ garbanė http: // 127.0.0.1: 8080 / account / 1$ garbanė http: // 127.0.0.1: 8080 / account / 2
Duomenų pridėjimas naudojant POST „REST“ API:
Dabar ketinu pervadinti gauti.py į api.py ir pridėkite API galinį tašką / paskyra naujų duomenų pridėjimui.
Pervardyti gauti.py į api.py:
$ mv -v gauti.py api.pyPirmiausia pridėkite eilutes (19–26), kaip pažymėta žemiau esančiame ekrano kopija api.py failą.
Dabar paleiskite api.py serveris:
$ bin / python3 api.py
Norėdami įterpti naujus duomenis į / paskyra pabaigos tašką, vykdykite šią komandą:
$ curl -X POST -H "Content-Type: application / json" -d '"name": "Shovon", "balance": 100'http: // 127.0.0.1: 8080 / paskyra
PASTABA: Čia, „“ Pavadinimas “:„ Shovon “,„ balansas “: 100“ yra JSON įvesties duomenys.
Duomenys turėtų būti įterpti.
Kaip matote, nauji duomenys pridedami.
Taigi viskas šiam straipsniui. Dėkojame, kad perskaitėte šį straipsnį.