前后端传输数据的编码格式(contentType)
get请求数据就是直接放在url?后面的
url?usernmae=junjie&password=123...
可以向后端发送post请求的方式
- form请求
- ajax请求
前后端传输数据的编码格式
- urlencoded
- formdata
- json
研究form表单:默认的数据编码格式是(urlencoded)
结论:Django针对urlencoded编码格式的数据会自动帮你解析封装到request.POST中。
那么文件是什么数据类型?
结论:如果将编码格式改为form-data,那么针对普通的键值对还是解析到request.POST,但是针对文件类型格式解析到request.FILES中。
Django进行了二次封装,后端针对不同的编码格式在后端内部做不同的编码解析,并放到不同的方法中。
form表单只能发送urlencoded以及formdata两种编码格式。
那么Ajax是什么数据格式?
结论:默认也是urlencoded,数据格式username=junjie&age=20。所有后端需要request.POST接受数据
ajax发送JSON格式数据
前后端传输数据的时候一定要确保编码格式与数据真正的格式是一致的。
JSON.stringify 前端将数据转为JSON格式 与 contentType:'application/json' 指定字符编码格式
<script&