Django Rest Framework предлагает пару классов помощников, которые мы можем использовать для создания наших конечных точек API.
Apiiview.
ViewSet
APIIIVEW
и Viewset
Оба класса немного отличаются и предлагают свои преимущества в этом посте Мы будем дайвинга в APIIIVEW
Отказ
APIIIVEW
является наиболее основным видом зрения, мы можем использовать для создания наших API.
. Это позволяет нам описать логику, которая делает наши API
конечная точка.
APIIIVEW
Позволяет нам определить функции, которые соответствуют стандарту Http
Методы:
ПОЛУЧИТЬ , СООБЩЕНИЕ , ПОМЕЩАТЬ , ПЛАСТЫРЬ , УДАЛЯТЬ
Когда использовать ApiViews?
- Нужно полный контроль над логикой.
- Обработка файлов и рендеринга синхронного ответа.
- Вызов других API и услуг.
- Доступ к локальным файлам или данным.
Теперь давайте создадим наш первый APIIIVEW
Отказ Сначала мы собираемся импортировать некоторые занятия в нашем Просмотр .py
Отказ
from rest_framework.views import APIView from rest_framework.response import Response
Создание класса faperapiew.
Под импортом давайте создадим новый класс под названием Firstapiew
и наследовать от APIIIVEW
который мы импортировали из REST_FRAMEWORK
Отказ
class FirstAPIView(APIView): """ Test API View """ def get(self, request, format=None): """ Returns some random values """ py_list = [ "apples","bananas",2,5 ] return Response({'message': 'Hello!', 'list': py_list})
Мы создали Получить
Функция, которая вернет сообщение
и Список
как ответ, если мы получим Получить
Запрос на этот путь.
Проводка его к URL.
from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), path('api/', include('APP_NAME.urls')), ]
В вышеуказанном коде мы внесли изменения по течению кода, такого как:
- Импорт
включить
Функция, которая помогает нам включать URL из других приложений. - Создан новый путь
API/
и проворачивать его с помощью файла приложения URLS.
Создайте новый файл в папке приложения AS URLS.PY
И вставьте ниже строки кода в нем.
from django.urls import path from APP_NAME import views urlpatterns = [ path('first-view', views.FirstAPIView.as_view()), ]
Добавляя вышеуказанный код, мы:
- Импортирован
путь
отdjango.urls
иВиды
из нашего пользовательского приложения. - Создано
URLPatterns
который связанПервый вид
путь к нашемуFirstapiew
класс.
Тестирование нашего APIIIVEW.
В терминале:
python manage.py runserver 0.0.0.0:8080
Посетите ниже ссылку с помощью любого браузера:
127.0.0.1:8080/api/first-view/
Демонстрация
Оригинал: “https://dev.to/chokshiroshan/what-is-an-apiview-2g8o”