post请求和get请求content_type的种类

Posted lingling144

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了post请求和get请求content_type的种类相关的知识,希望对你有一定的参考价值。

get请求的headers中没有content-type这个字段,post 的 content-type 有两种 :

    • application/x-www-form-urlencoded 
      这种就是一般的文本表单用post传地数据,只要将得到的data用querystring解析下就可以了
    • multipart/form-data 
      文件表单的传输,也是本文介绍的重点

获取POST数据 
前面已经说过,post数据的传输是可能分包的,因此必然是异步的。post数据的接受过程如下:

exports.processClientInput=function(req,cb){
method = req.method.toLowerCase();
if(method==="post"){
var urlstr="";
var jsondata;
req.addListener("data",function(postdata){
urlstr+=postdata;

});
req.addListener("end",function(){
jsondata = querystring.parse(urlstr);
cb(null,jsondata);
});
}else if(method==="get"){
var jsonData=urlLib.parse(req.url,true).query;
cb(null,jsonData);
}
}
第二个if就是get数据的解析方式。
注意,对于非文件post数据,上面以字符串接收是没问题的,但其实 postDataChunk 是一个 buffer 类型数据,在遇到二进制时,这样的接受方式存在问题。

但是现在的这种post处理数据的方式是解析不了form表单提交的数据的。

以上是关于post请求和get请求content_type的种类的主要内容,如果未能解决你的问题,请参考以下文章

Python学习---Django关于POST的请求解析源码分析

get请求和post请求区别

get 和 post 请求的区分

在 Django 中获取请求正文作为字符串

http请求中get和post请求的区别

OkHttpOkHttp Get 和 Post 请求 ( 同步 Get 请求 | 异步 Get 请求 | 同步 Post 请求 | 异步 Post 请求 )