node.js(八 --- express)
EXPRESS
重要的模块
body-parser: node.js中间件,用于处理JSON,Text和URL编码的数据;
cookie-parser:这就是一个解析Cookie的工具。通过req.cookies可以取到传过来的cookie,并把它们转成对象;
multer: node.js中间件,用于处理enctype='multipart/form-data'(设置表单的MME编码)的表单数据;
请求和响应
即request和response对象来处理请求和响应的数据;
requset对象:
表示HTTP请求,包含了请求查询字符串,参数,内容,HTTP头部等属性。
属性:
1、req.app:当callback为外部文件时,用req.app访问express的实例;
2、req.baseUrl: 获取路由当前安装的URL路径;
3、req.body/req.cookies:获取请求体/Cookie;
4、req.fresh/req.state:判断请求是否还[新鲜];
5、req.hostname/req.ip:获取主机名和IP地址;
6、req.originalUrl: 获取原始请求Url;
7、req.params:获取路由的parameters;
8、req.path: 获取请求路径;
9、req.protocol: 获取协议类型;
10、req.query: 获取URL的查询参数;
11、req.route: 获取当前匹配的路由;
12、req.subdomains:获取子域名;
13、req.accepts(): 检查可接受的请求的文档类型;
14、req.acceptsCharsets/req.acceptsEncodings/req.acceptslanguages: 返回指定字符集的第一个可接受字符编码;
15、req.get(): 获取指定的HTTP请求头;
16、req.is(): 判断请求头Content-Type的MME类型;
response对象:
表示HTTP响应,即在接收到请求时向客户端发送的HTTP响应数据;
属性:
1、res.app: 同req.app一样;
2、res.append(): 追加指定的HTTP头;
3、res.set():在res.append()后将重置之前设置的头;
4、res.cookie(name,value,options): 设置Cookie;
5、option: domain/expires/httpOnly/maxAge/path/secure/signed;
6、res.clearCookie(): 清除Cookie;
7、res.download(): 传送指定路径的文件;
8、res.get(): 返回指定的HTTP头;
9、res.jsonp(): 传送JSONP响应;
10、res.json(): 传送JSON响应;
11、res.location(): 只设置响应的Location HTTP头,不设置状态码或者close response;
12、res.redirect(): 设置响应的Location HTTP头,并设置状态码302;
13、res.render(view, locals, callback): 渲染一个view,同时向callback传递渲染后的字符串,如果在渲染过程中有错误发生next(err)将会被自动调用。callback将会被传入一个可能发生的错误以及渲染后的页面,这样就不会自动输出了;
14、res.send(): 传送HTTP响应;
15、res.sendFile(path,options,fn): 传送指定路径的文件-会自动根据文件extension设定Content-Type;
16、res.set(): 设置HTTP头,传入object可以一次设置多个头;
17、res.status(): 设置HTTP状态码;
18、res.type(): 设置Content-TYpe的MIME类型;
静态文件
Express提供了内置的中间件express.static来设置静态文件;
例如: app.use(express.static('pulic')); 然后我们就可以在public目录下放置图片,css,js等静态内容了
REST
REST是表属性状态传递(英文:Representational State Transter, 简称REST); 表述性状态转移是一组架构约束条件和原则,满足这些约束条件和原则的应用程序或设计就是RESTful。但是需要注意的是,REST就是设计风格而不是一种标准;REST通常使用JSON数据格式。
转载于:https://www.cnblogs.com/mufc/p/10101903.html
node.js(八 --- express)相关推荐
- 用node.js和express.js和jade搭建轻型cms系统
http://cnodejs.org/topic/4f16442ccae1f4aa270010bf 前言: 我们主要做的是iphone/ipad程序,但关注node.js很久,因为我们多少总是要做网站 ...
- 使用 Node.js、Express、AngularJS 和 MongoDB 构建一个Web程序
为什么80%的码农都做不了架构师?>>> 使用 Node.js.Express.AngularJS 和 MongoDB 构建一个实时问卷调查应用程序 2014 年 3 月 20 ...
- Installing Node.js and Express on Ubuntu
Installing Node.js and Express on Ubuntu 1. 在nodejs官网上下载Linux Binaries(已经包含了npm): 2. 安装Node.js 下载后解压 ...
- 如何使用Node.js,Express和MongoDB设置GraphQL服务器
by Leonardo Maldonado 莱昂纳多·马尔多纳多(Leonardo Maldonado) 如何使用Node.js,Express和MongoDB设置GraphQL服务器 (How to ...
- node.js安装express(零起点搭建本地测试服务器)- 教程篇
(含图文教程.代码对比,等)node.js安装express(零起点搭建本地测试服务器)- 教程篇 原教程 · 参考地址 执行step3之后,结果截图 · 如下图2 : 之后,执行step4,截图如下 ...
- Node.js结合Express框架项目搭建
一.简述 本次项目是用node.js写后台接口,前端使用vue.js分离的方法实现一个在线点咖啡的项目.本节教程只是一个简单的入门,关于实际用法后期继续更新. 二.搭建应用 1. 通过应用生成器工具 ...
- 使用Node.js的Express框架搭建和开发项目
在搭建项目前,需要安装node.js,npm node.js安装方法 ,npm安装方法 接下来我们来创建express项目 1.选择项目安装目录 假如选择D:\projects\node\blog作为 ...
- 【前端——Node.js】:Express、数据库与身份认证
一.Express 1.express路由 (1)路由 路由就是映射关系.在Express中,路由是指客户端的请求与服务器处理函数之间的映射关系 (2)路由匹配的过程 (3)模块化路由 为了方便对路由 ...
- Node.js之 express写后端接口
参考 https://blog.csdn.net/studysinklc/article/details/103166451 一 1 首先,新建一个Node.js项目,在项目目录下安装express ...
最新文章
- 阿里三面,P9面试官是如何360°无死角考察候选人的?
- 借助Scrum工作室使用敏捷原则提升组织响应能力
- 作用c语言算圆的周长,C语言入门级代码 输入圆的半径求出圆的周长及面积
- 百度定位sdk使用说明
- Python之pandas:pandas中to_csv()、read_csv()函数的index、index_col(不将索引列写入)参数详解之详细攻略
- Android 编程下通知的发送
- vue cli 4 多环境_Vue 前端uni-app多环境配置部署服务器的问题
- android摄像头框架,FS_S5PC100平台上Android Camera架构分析
- 云服务器cvm只能弄网站么,云服务器cvm与建站主机区别
- 产品经理如何培养敏锐的商业嗅觉
- php package manager,package命令的安装教程
- 软件测试的基础知识(六)
- 后台扫描与备份文件泄露(御剑+dirsearch使用)
- 小程序mqtt实现聊天功能
- 05【应用工具简介】PM 流程图,思维导图,原型图绘制?怎么绘制不被解雇?
- 在java中获取全年的节假日(包含周末和法定节假日及调休日)
- 只做正确的事情,并持续输出价值
- Apple Pay编程指南(5) - 处理付款结果
- 申报绿色工厂对企业意义
- 国外流行网上支付方式
热门文章
- HDU 5996 dingyeye loves stone [阶梯Nim]
- android显示通知栏Notification以及自定义Notification的View
- GCC 用 C++ 来编译(酷壳)
- 气愤ing,身份证丢了到底要不要挂失?
- 实验楼python挑战答案_python基础知识
- 如何系统自学python_如何系统地自学 Python?
- RocketMQ的安装与启动
- 分布式与系统架构的演变
- 14Linux远程登录And15Linux远程文件传输
- Hybrid Data Fusion (HDF)——数据融合