首页 > 其他 > 详细

post请求和get请求content_type的种类

时间:2017-12-15 18:09:37      阅读:225      评论:0      收藏:0      [点我收藏+]

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的种类

原文:http://www.cnblogs.com/learnings/p/8044330.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!