Python

Създаване на REST API в Python

Създаване на REST API в Python
REST или Reprezentative State Transfer е стил на разработка на софтуер, използван главно в дизайна на API или интерфейс за програмиране на приложения за изграждане на интерактивни и модерни уеб услуги. Известна е и като уеб услуга RESTful.

Python е мощен език за програмиране. Той има много библиотеки за изграждане на REST или RESTful API. Една от популярните библиотеки за създаване на уеб приложения и писане на REST API е Колба.

В тази статия ще ви покажа как да създадете REST API в Python с помощта на Flask. Да започваме.

Изисквания:

Трябва да имаш

Трябва да можете да намерите статии и уроци по всички тези теми в 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 /сметка/ е дефиниран. The getAccount () функцията приема a документ за самоличност като аргумент. Стойността на от крайната точка на API е зададена на документ за самоличност променлива от getAccount () функция.

На ред 16, документ за самоличност променливата се преобразува в цяло число. Също така изведох 1 от документ за самоличност променлива. Тъй като индексът на масива започва от 0. Искам да стартирам идентификатора на акаунта от 1. Така че, ако сложа 1 като акаунт , 1 - 1 = 0, ще получа елемента с индекс 0 от масива сметки.

На ред 17, масивът с индекс се връща като JSON.

Останалите кодове са същите.

Сега стартирайте 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 входните данни.

Данните трябва да бъдат вмъкнати.

Както можете да видите, новите данни се добавят.

Така че това е за тази статия.  Благодаря, че прочетохте тази статия.

Битка за Уеснот 1.13.6 Разработка освободена
Битка за Уеснот 1.13.6, издаден миналия месец, е шестата версия за разработка в 1.13.x серия и предоставя редица подобрения, най-вече на потребителски...
Как да инсталирате League Of Legends на Ubuntu 14.04
Ако сте фен на League of Legends, това е възможност за вас да тествате League of Legends. Имайте предвид, че LOL се поддържа на PlayOnLinux, ако сте п...
Инсталирайте най-новата стратегия за игра OpenRA на Ubuntu Linux
OpenRA е Libre / Free Real Time стратегия за игра, която пресъздава ранните игри на Westwood като класическата Command & Conquer: Red Alert. Разпредел...