Python е мощен език за програмиране. Той има много библиотеки за изграждане на REST или RESTful API. Една от популярните библиотеки за създаване на уеб приложения и писане на REST API е Колба.
В тази статия ще ви покажа как да създадете REST API в Python с помощта на Flask. Да започваме.
Изисквания:
Трябва да имаш
- Python 2 или Python 3, инсталирани на вашия компютър.
- PIP или PIP3, инсталирани на вашия компютър.
- Основното разбиране на езика за програмиране на Python.
- Основното разбиране за изпълнение на команди в черупката.
Трябва да можете да намерите статии и уроци по всички тези теми в LinuxHint.com
В тази статия ще използвам Python 3 на Debian 9 Stretch. Ако използвате Python 2, ще трябва да се настроите малко. Би трябвало да можете сами да го разберете, тъй като ще бъде просто като писането питон вместо python3 и пип вместо pip3.
Настройка на виртуална среда:
Казано по-просто, виртуалната среда се използва за изолиране на едно приложение на Python от друго. Пакетът Python, използван за това, е virtualenv.
Можете лесно да инсталирате virtualenv използване на PIP на вашия компютър със следната команда:
$ sudo -H pip3 инсталира virtualenvСега създайте директория на проекта (нека го наречем пирест /) със следната команда:
$ mkdir пирестСега създайте виртуална среда на Python на пирест / директория на проекта със следната команда:
$ virtualenv pyrest /Сега отидете в директорията на проекта със следната команда:
$ cd пирестСлед това активирайте виртуалната среда на Python със следната команда:
$ source bin / активиранеИ накрая, изпълнете следната команда, за да инсталирате библиотеката на Flask Python:
$ bin / pip3 инсталационна колбаПисане на първия ви сценарий за колба:
В този раздел ще напиша здравей световна програма в Python Flask.
Първо създайте файл Здравейте.py в директорията на вашия проект:
$ touch здравей.pyСега добавете следните редове към Здравейте.py файл и го запазете.
В следващия раздел ще ви покажа как да стартирате скриптове на Flask.
Изпълнява се скрипт за колба:
Сега да започнете Здравейте.py Flask сървър, изпълнете следната команда:
$ bin / python3 здравей.pyКакто можете да видите, сървърът е стартирал на http: // 127.0.0.1: 8080.
Сега можете да получите достъп до Flask сървъра http: // 127.0.0.1: 8080 от уеб браузър или софтуер за тестване на API като Postman. Ще използвам CURL.
$ curl http: // 127.0.0.1: 8080Както можете да видите, на екрана се отпечатва правилният изход.
поздравления! Колбата работи.
Достъп до данни чрез GET в REST API:
Заявката GET за REST API се използва за извличане на информация от API сървъра. Задавате някои крайни точки на API и правите GET заявка за тази крайна точка. Просто е.
Първо създайте нов файл вземете.py във вашата директория на проекта със следната команда:
$ touch get.pyСега добавете следните редове във вашия вземете.py файл и го запазете.
Тук, на ред 1, Колба конструктор функция и jsonify функция се импортира от модула на колбата.
На ред 3, a Колба обект се създава и съхранява в ап променлива.
На ред 5 създадох масив от речници на Python на някои фиктивни данни и ги съхраних в сметки променлива.
На ред 10 дефинирах крайната точка на API / акаунти и метода на заявката, който е ВЗЕМЕТЕ.
На ред 11 дефинирах функцията getAccounts (). getAccounts () функция ще се изпълни, когато GET заявка към / акаунти се прави крайна точка.
Ред 12, който е част от getAccounts () функция, преобразувах сметки масив от речници за използване на JSON jsonify () функция и я върна.
На линия 14-15 се обадих на ап.тичам () да каже на Flask да стартира API сървъра на порт 8080.
Сега стартирайте сървъра на Flask API със следната команда:
$ bin / python3 получи.pyСървърът е стартиран на порт 8080.
Сега направете GET заявка към / акаунти крайна точка с CURL, както следва:
$ curl http: // 127.0.0.1: 8080 / акаунтиКакто можете да видите, данните за акаунтите се показват като JSON формат при GET заявка на / акаунти крайна точка.
Можете също така да получите конкретни данни за акаунта. За да направя това, ще създам друга крайна точка на API /сметка/
Редактирайте вземете.py скрипт и добавете маркираните редове към него.
Тук, на ред 14, дефинирах крайната точка на API /сметка/
На ред 15-17, функцията getAccount () за крайната точка на API /сметка/
На ред 16, документ за самоличност променливата се преобразува в цяло число. Също така изведох 1 от документ за самоличност променлива. Тъй като индексът на масива започва от 0. Искам да стартирам идентификатора на акаунта от 1. Така че, ако сложа 1 като акаунт
На ред 17, масивът с индекс
Останалите кодове са същите.
Сега стартирайте API сървъра отново.
$ bin / python3 получи.py
Поисках данни за акаунти 1 и 2 отделно и получих очаквания изход, както можете да видите от екранната снимка по-долу.
$ curl http: // 127.0.0.1: 8080 / акаунт / 1$ curl http: // 127.0.0.1: 8080 / акаунт / 2
Добавяне на данни с помощта на POST в REST API:
Сега ще преименувам вземете.py да се api.py и добавете крайна точка на API /сметка за добавяне на нови данни.
Преименувайте вземете.py да се api.py:
$ mv -v получи.py api.pyПърво добавете редовете (19-26), както е отбелязано на екранната снимка по-долу, към api.py файл.
Сега стартирайте api.py сървър:
$ bin / python3 api.py
За да вмъкнете нови данни в /сметка крайна точка, изпълнете следната команда:
$ curl -X POST -H "Content-Type: application / json" -d '"name": "Shovon", "balance": 100'http: // 127.0.0.1: 8080 / акаунт
ЗАБЕЛЕЖКА: Тук, „„ Име “:„ Шовон “,„ баланс “: 100“ е JSON входните данни.
Данните трябва да бъдат вмъкнати.
Както можете да видите, новите данни се добавят.
Така че това е за тази статия. Благодаря, че прочетохте тази статия.