解析器的作用就是服務端接收客戶端傳過來的資料,把資料解析成自己想要的資料型別的過程。
本質就是對請求體中的資料進行解析。
我們請求進來請求體中的資料在request.body中,那也就證明,解析器會把解析好的資料放入request.body
我們在檢視中可以列印request的型別,能夠知道request是wsgirequest這個類。
我們可以看下這個類的原始碼~~~我們是怎麼拿到request.post資料的~~
multipart/form-data是將檔案以二進位制的形式上傳,這樣可以實現多種型別的檔案上傳
乙個解析到request.post, request.files中。
也就是說我們之前能在request中能到的各種資料是因為用了不同格式的資料解析器~
那麼我們的drf能夠解析什麼樣的資料型別呢~~~
我們想乙個問題~什麼時候我們的解析器會被呼叫呢~~ 是不是在request.data拿資料的時候~
我們說請求資料都在request.data中,那我們看下這個request類裡的data~~
得到解析器後,呼叫解析器裡的parse方法~~
那說到這裡~我們看下drf配置的預設的解析器的類都有哪些~~
也就是說我們的drf支援json,form表單的請求,包括多種檔案型別的資料~~~~
可以在我們的檢視中配置檢視級別的解析器~~~
這就是我們drf的解析器~~~
渲染器就是友好的展示資料~~
drf給我們提供的渲染器有~~
我們在瀏覽器中展示的drf測試的那個頁面~就是通過瀏覽器的渲染器來做到的~~
當然我們可以展示json資料型別~~~~渲染器比較簡單~~~~
rest framework 解析器,渲染器
解析器的作用就是服務端接收客戶端傳過來的資料,把資料解析成自己可以處理的資料。本質就是對請求體中的資料進行解析。解析器工作原理的就是拿到請求的contenttype來判斷前端給我的資料型別是什麼,然後我們在後端使用相應的解析器去解析資料。ps django 原生是不支援 json 型別的資料,資料通...
DRF 的解析器和渲染器
解析器的作用就是服務端接收客戶端傳過來的資料,把資料解析成自己可以處理的資料。本質就是對請求體中的資料進行解析。在了解解析器之前,我們要先知道accept以及contenttype請求頭。accept是告訴對方我能解析什麼樣的資料,通常也可以表示我想要什麼樣的資料。contenttype是告訴對方我...
DRF的解析器和渲染器
解析器的作用就是服務端接收客戶端傳過來的資料,把資料解析成自己想要的資料型別的過程。本質就是對請求體中的資料進行解析。我們請求進來請求體中的資料在request.body中,那也就證明,解析器會把解析好的資料放入request.body 我們在檢視中可以列印request的型別,能夠知道reques...