DRF的解析器和渲染器
阿新 • • 發佈:2018-11-04
解析器
解析器的作用就是服務端接收客戶端傳過來的資料,把資料解析成自己想要的資料型別的過程。
本質就是對請求體中的資料進行解析。
Django的解析器
我們請求進來請求體中的資料在request.body中,那也就證明,解析器會把解析好的資料放入request.body
我們在檢視中可以列印request的型別,能夠知道request是WSGIRequest這個類。
我們可以看下這個類的原始碼,我們是怎麼拿到request.POST資料的
application/x-www-form-urlencoded不是不能上傳檔案,是隻能上傳文字格式的檔案,
multipart/form-data是將檔案以二進位制的形式上傳,這樣可以實現多種型別的檔案上傳
一個解析到request.POST, request.FILES中。
也就是說我們之前能在request中能到的各種資料是因為用了不同格式的資料解析器~
那麼我們的DRF能夠解析什麼樣的資料型別呢
DRF的解析器
我們想一個問題~什麼時候我們的解析器會被呼叫呢~~ 是不是在request.data拿資料的時候~
我們說請求資料都在request.data中,那我們看下這個Request類裡的data
第一步:我們的data肯定封裝在request裡的所有從這裡入手
可以在我們的檢視中配置檢視級別的解析器
DRF的渲染器
渲染器就是友好的展示資料
DRF給我們提供的渲染器有
第一步: