express-7-request
来源:互联网 发布:win7人工智能 编辑:程序博客网 时间:2024/06/09 21:11
request:请求头(主机地址+请求方式+客户浏览器的一些信息)、消息体(主要是用户提交上来的数据)
一、属性:
baseUrl:当前路由挂载的路径,
hostname:服务器主机名称
ip:客户的IP地址
params:提交上来的参数
path:主机名称后面的资源路径
protocol:协议名称
query:get请求的信息
route:app下挂载的路由对象
cookies:客户端提交上来的cookie,需要cookieParser中间件
body:post提交的数据对象,需要bodyParser中间件
signedCookies:已签署的cookies (解析时要声明加密)
app:代表express的application对象
二、方法:
get(field):获取请求头中对应名称的属性
is(type):判断是否有指定的mime类型
param(name):获取指定名称的参数值
三、文件上传
第三方中间件:busboy
var http =require("http");
var express = require("express");
var Busboy = require("busboy");
var fs = require("fs");
var app =exrpress();
http.createServer(app);
app.use(express.static(__dirname_"/public"));
app.post("/fileupload",function(req,res){
//通过请求头信息创建busboy对象
var busboy = new Busboy({headers: req.headers});
//将流链接到busboy对象
req.pipe(busboy);
//监听file事件获取文件(字段名、文件、文件名、传输编码,mime类型)
busboy.on("file",function(fieldname,file,filename,encoding,mimetype){
var writeStream = fs.createWriteStream("./upload/"+filename);
//读取数据
file.on("data",function(data){
cosole.log('File['+fieldname+']got'+data.length+'bytes');
writeStream.write(data);//写入数据
});
//写入完成
file.on("end",function(){
console.log('File['+fieldname+']Finished');
writeStream.end();//关闭写入流
})
})
//监听filed事件获取字段信息(字段名称,字段值,字段名称是否阶段,传输编码,mime类型)
busboy.on("field",function(fieldname,val,fieldnameTruncated,ecoding,mimeype){
console.log('Field['+fieldname+']:value:'+val+',fieldameTruncated='+fieldnameTruncated+',valTruncated='+valTrucated);
//监听完成事件finish
busboy.on('finish',function(){
console.log('form解析完成');
res.writeHead(303,{Connection:'close',Location:'http://www.baidu.com/'});
})
})
})
- express-7-request
- [Express-03] Request对象
- express 学习笔记(二)request && response
- express手册之五,request和response
- nodejs express request 和 response 对象分析
- [NODE之17]request和express框架request
- 使用 NodeJS + Express 從 GET/POST Request 取值
- Express Api 翻译[二] ——Request篇
- nodejs express request 和 response 对象的具体介绍:
- Nodejs Express 4.X 中文API 2--- Request篇
- nodejs express request 和 response 对象的具体介绍:
- NodeJS中,Express获取request所传递的数据方式
- express
- express
- Express
- express
- Express
- express
- Spring+Mybatis+SpringMVC+Maven+MySql搭建实例
- Unity项目如何使用Git进行版本控制
- 16.状态模式
- sdl实现texture旋转
- (9) Shell 输入输出重定向
- express-7-request
- 几个基础算法介绍和实现——选择排序
- 17.适配器模式
- code review
- (10) Shell 实战之Tomcat 重部署
- Web前端-HeadFirst-笔记-CH10-简写vs长形式
- Markdown-----基础语法
- 18.备忘录模式
- linux系统ubuntu环境下修改MySQL (V5.7.18)的密码