三种数据编码格式-urlencoded、formdata、json

  • urlencoded(Content-Type:application/x-www-form-urlencoded)

    格式(跟request.GET的参数非常像): username=dbj&password=123&file=1755041963.jpeg.jpeg

    默认使用: form表单&ajax,都默认的urlencode编码格式

    django对urlencoded的处理:  django后端,针对符合urlencoded编码格式的数据,都会自动,帮你解析封装到request.POST中

    django后端获取数据的模样: <QueryDict: {'username': ['dbj'], 'password': ['123'], 'file': ['1755041963.jpeg.jpeg']}>  

  • formdata(Content-Type:multipart/form-data)  

    格式: 类似与二进制的格式

    默认使用: 无,一般我们上传文件的时候,使用该编码格式,在form表单里面添加一个属性即可,enctype="multipart/form-data"

    django对formdata的处理: 如果你把编码格式改成formdata,那么针对普通的键值对,还是解析到request.POST中,而将文件解析到request.FILES中

    django后端获取数据的模样: <QueryDict: {'username': ['dbj'], 'password': ['123']}>,<MultiValueDict: {'file': [<InMemoryUploadedFile: 1755041963.jpeg.jpeg (image/jpeg)>]}>json

    

  • json

    格式:  {"username": "dbj", "password": "123"}

    默认使用: 一般前后端进行分离开发的时候,使用该格式

    django对json的处理: django后端不会帮你处理json格式数据需要你自己去request.body获取并处理,在request.bdy里面取出来的是bytes类型的,需要自己手动解码,反序列化

 

转自 :前后端传输数据的编码格式---urlencoded,formdata, json这三种格式的详解_骑台风走的博客-CSDN博客

posted @ 2023-03-11 20:29  hyeonsori  阅读(159)  评论(0)    收藏  举报