Files

46 lines
1.8 KiB
Python
Raw Permalink Normal View History

"""
URL configuration for config project.
The `urlpatterns` list routes URLs to views. For more information please see:
https://docs.djangoproject.com/en/6.0/topics/http/urls/
Examples:
Function views
1. Add an import: from my_app import views
2. Add a URL to urlpatterns: path('', views.home, name='home')
Class-based views
1. Add an import: from other_app.views import Home
2. Add a URL to urlpatterns: path('', Home.as_view(), name='home')
Including another URLconf
1. Import the include() function: from django.urls import include, path
2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
"""
from django.contrib import admin
from django.urls import path, include
from rest_framework_simplejwt.views import TokenObtainPairView, TokenRefreshView
from drf_spectacular.views import SpectacularAPIView, SpectacularSwaggerView, SpectacularRedocView
from config.health import ping, test_mysql
urlpatterns = [
path('admin/', admin.site.urls),
# 健康检查(无需登录)
path('api/ping/', ping),
path('api/testmysql/', test_mysql),
# API Routes
path('api/user/', include('apps.user.urls')),
path('api/case/', include('apps.case.urls')),
path('api/training/', include('apps.training.urls')),
path('api/cms/', include('apps.cms.urls')),
# JWT Token
path('api/token/', TokenObtainPairView.as_view(), name='token_obtain_pair'),
path('api/token/refresh/', TokenRefreshView.as_view(), name='token_refresh'),
# API Documentation
path('api/schema/', SpectacularAPIView.as_view(), name='schema'),
path('api/docs/swagger/', SpectacularSwaggerView.as_view(url_name='schema'), name='swagger-ui'),
path('api/docs/redoc/', SpectacularRedocView.as_view(url_name='schema'), name='redoc'),
]