Loading

9.为url添加可选的后缀

为url添加可选的后缀
在drf的机制中,响应数据的格式不再与单一内容类型连接,可以同时享有json格式或html格式,我们可以为api路径添加格式后缀的支持,使用格式后缀给我们明确指定了给定格式的url
这意味着我们的api将能够处理诸如http://xxxx.com/api/1.json 之类的url
# view
# 例如下面两个视图中添加一个format关键字参数

def snippet_list_1(request, format=None):


def snippet_list_2(request, pk,format=None):
    
#仅仅在视图中添加format参数还不够,还需要在路由中进行设置,现在更新snippets/urls.py文件,为现有的url后面添加一组format_suffix_patterns

# urls.py
# 格式化后缀的模式
from rest_framework.urlpatterns import format_suffix_patterns

urlpatterns = [
    path('api-auth/<int:pk>', snippet_list_2),
]

# 将urlpatterns传入format_suffix_patterns进行一层封装,支持.json/.html url的请求方式
urlpatterns = format_suffix_patterns(urlpatterns)
# 需要注意路由中地址后缀不带/ 
# 如果带/ , http://xxx.com/api-auth/1/.json #会报错
# 不带/,http://xxx.com/api-auth/1.json #正常访问

 

posted @ 2022-04-29 19:28  木子七  阅读(228)  评论(0编辑  收藏  举报