一、思考❓❔
1.创建API接口难吗?
软件测试工程师:
- 只测过API接口, 从没创建过
- 应该需要掌握一门后端开发语言和后端开发框架吧!?
- 脑容量有限,想想就可怕
2.如何创建API接口呢?
- 使用Django restframework能快速创建符合restful风格的API接口
- 通过Django restframework框架提供的序列化器、视图集可轻轻松松实现
- 简单高效,学习成本低
二、搭建项目工程??
1.创建项目
-
打开pycharm
-
创建项目
- 使用豆瓣源安装Django Django restframework markdown
- 创建Django项目工程
在Terminal中运行
python manage.py runserver
, 在浏览器中访问, 如果出现如下页面代表成功
三、创建API接口????
1.创建子应用并迁移
# 在Terminal中创建子应用 python manage.py startapp users # 进行数据库迁移 python manage.py makemigrations python manage.py migrate
2.添加配置
在CreateRestfulAPI/settings.py中添加如下配置:
# 将'rest_framework'和'users.apps.UsersConfig'加入到INSTALLED_APPS列表中 INSTALLED_APPS = [ # restframework子应用 'rest_framework', # users子应用 'users.apps.UsersConfig', ] # restframework的全局配置放在REST_FRAMEWORK字典中 REST_FRAMEWORK = { # 使用Django自带permission_class来进行认证 # 为认证的用户只有读的权限 'DEFAULT_PERMISSION_CLASSES': [ 'rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly' ] }
3.编写代码
- 创建users/serializers.py文件
from django.contrib.auth.models import User from rest_framework.serializers import HyperlinkedModelSerializer # 创建序列化器 class UsersModelSerializer(HyperlinkedModelSerializer): class Meta: model = User fields = ('url', 'username', 'email', 'is_staff', 'is_active', 'last_login')
- 在users/views.py中添加如下代码
from rest_framework import viewsets from django.contrib.auth.models import User from users.serializers import UsersModelSerializer # 定义视图集 class UsersViewSet(viewsets.ModelViewSet): queryset = User.objects.all() serializer_class = UsersModelSerializer
- 创建子路由users/urls.py文件
from rest_framework.routers import DefaultRouter from .views import UsersViewSet # 创建DefaultRouter对象 router = DefaultRouter() # 批量添加路由 router.register(r'users', UsersViewSet) urlpatterns = [ ] urlpatterns += router.urls
- 在全局路由文件CreateRestfulAPI/urls.py中添加如下代码
from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), # 添加restframework自带的登录接口路由 path('', include('rest_framework.urls', namespace='rest_framework')), # 添加子路由 path('', include('users.urls')), ]
- 创建超级管理员用户
- 运行项目
- 在命令行输入:
python manage.py runserver
- 在命令行输入:
4.效果展示
- 访问主页
- 使用超级管理员用户登录
- 对用户进行管理(POST、GET)
- 对用户进行管理(GET、PUT、DELETE)
六、总结??
- 本文介绍了一种创建符合Restful风格的API接口的方法
- 包含Django项目环境的搭建
- 实现了GET、POST、PUT、DELETE接口的创建方式, 简单高效
- 本文为可优原创,有不足之处,请多指教!
欢迎来到testingpai.com!
注册 关于