express中间件的学习
自学前端的这个过程,在接触到node、express等东西应该算是学习过程中的一个分界点了,在这之后,略懂了一些后端的知识,也对网站构建的整个过程以及不同的阶段需要用到的工具有了一个大概的了解。最近在开始写一个自己小项目,和照着书上做不一样,自己独立来完成的时候需要把一些以前不知道不在意的地方搞清楚,比如express中的经常用到的中间件的作用。下面是对几个中间件的小结:
CORS
cross-origin resource sharing
关于CORS:1、服务端CORS只包含在HTTP's 的头部,可以告知哪个域可以请求API,哪些http方法是被允许的,哪些终端可以跨域共享应用程序。
2、express中的中间件cors()可以释放我们的API的访问权限,在命令行中输入 $npm install cors --save 进行安装。使用方式如下:
var express = require('express');
var cors = require('cors');
var app = express();
app.use(cors({//用来限制头部文件中的信息
origin:['http://localhost:8000'],
methods:['GET','POST'],
allowaHeaders: ['Content-Type','Authorization'],
}));
app.get('/',function(req,res) {
res.json({status: 'my api is alive'});
});
app.listen(3000,function() {
console.log('app is listenting');
});
module.exports = app;
morgan
设置应用程序报告并把用户的请求生成日志文件。
用法:
var express = require('express');
var app = express();
app.use(morgan('common'));
app.get('/',function(req,res) {
res,json({status:'my api is alive'});
});
app.listen(8000,function(req,res) {
console.log('app is listening');
});
compression
此中间件压缩相应的json数据和静态文件为GZIP格式,使请求更轻,加载速度更快。
用法:(在路由前加入)
var express = require('express');
var compression = require('compression');
var app = express();
app.use(compression);
网友评论