:::info 💡 第一个接口编写步骤 :::
汇报人:puppet洛洛
日期:2022年5月10日23:58:10
1.写接口前的准备工作
前面一直都是进行一些配置项,现在为写第一个接口做一些最后的准备工作。
我们在之前已经运行起来了Django项目,现在写接口需要用到路由的概念,你可以理解为根据url连接进行对应处理就是路由的基本概念。
1,首先,Django中存在父路由的概念,类似于是实现一整个模块(或一个Django APP)的功能接口集合,如订单模块(或一个Django APP)写和订单相关的接口(如添加到购物车接口),那这个订单路由则是父路由,添加到购物车接口就是子路由。
2,实际配置:
2.1,在与项目同名的文件夹下的urls.py中是存放父路由的,app文件下新建一个也叫urls.py(为了区分,我用app_urls.py代替)的文件存放子路由,通过urls.py文件配置父路由,再在app_urls.py中与与父路由绑定,最终完成整个接口的编写。图示:
2.2,代码示例
from django.contrib import admin
from django.urls import path
from django.contrib import admin
from django.urls import path, include
from django.conf.urls.static import static
from django.conf import settings
urlpatterns = [
path('admin/', admin.site.urls),
path('article/', include('rent.urls')), # 在主程序上注册路由
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) # 展示图片
from django.urls import path
from . import views
urlpatterns = [
path('navgator', views.firstapi, name='firstapi'),
]
from django.http import JsonResponse
from django.shortcuts import render
# Create your views here.
def firstapi(request):
"""
:param request:
:return:
"""
if request.method == 'GET':
data = {
"username": "zg",
"passwoed": "zy123465"
}
return JsonResponse(data)
可以看到app_urls.py里有一个函数views.firstapi,这就是接口的具体功能函数,绑定了app里的view.py里的函数。
最终接口就是父路由+子路由(子路由绑定具体功能,放在view.py中),启动项目后即可调用如下接口实现功能。
http://127.0.0.1:8000/article/navgator
2.3,有时候,我们需要除本机外的机器也访问到这个接口给同事调试,此时在settings.py文件的allowhost配置设置一个[‘*’]即可。
最后结果: