express

作者: 0说 | 来源:发表于2019-01-03 22:40 被阅读0次
const express = require('express');
/*
    express:保留原生的功能,添加了一些新的方法;增强了一些功能;


*/ 
let server = express();

        //  地址   req:请求的数据  res:响应的数据
server.use('/a.html', (req, res)=>{
    // res.write('6666') // 原生的方法也可以用
    // res.write({a: 123, b:456})  //报错 原生方法只能发送字符串类型与buffer类型

    // res.send({a: 123, b:456}) // 所有类型都可以发送
    res.send([1,2,3,4,5]) // 所有类型都可以发送
    res.end()
})

server.listen(8080)
const express = require('express');
// express 的中间键  就是插件  express-static 读取静态资源
const expressStatic = require('express-static')

const server = express();

server.all('*',function (req, res, next) {
    res.header('Access-Control-Allow-Origin', '*');
    res.header('Access-Control-Allow-Headers', 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With');
    res.header('Access-Control-Allow-Methods', 'PUT, POST, GET, DELETE, OPTIONS');
    if (req.method == 'OPTIONS') {
      res.send(200);
    }
    else {
      next();
    }
  });
//          接口/login
server.get('/login', (req, res)=>{
    if(req.query.user == 'aaaa'){
        res.send({
            "ok": "200",
            "msg": "是login"
        })
    }
    console.log(req.query)
})
//                        路径
server.use(expressStatic('./www'))

server.listen(8080)
const express = require('express');
// post请求转换中间件
const bodyParser = require('body-parser');

let server = express();
server.listen(8080);
// post 是通过body 带数据所以要先解析数据,把数据解析到req.body里这样下面才能用
server.use(bodyParser.urlencoded({
    extended: true, // 如果为true 开启扩展模式
    limit: 2*1024*1024 // 限制上传多大
}))
server.use('/', (req, res)=>{
    console.log(req.body)
})

链式操作 next往下运行

const express = require('express');
const bodyParser = require('body-parser');
const server = express();
server.listen(8081)
// 链式操作 next往下运行
server.use('/', (req, res, next)=>{
    console.log('66666')
    next()
})

server.use('/', (req, res)=>{
    console.log('77777')
})
const express = require('express');

let server = express();

server.listen(8082)

//  没有这个参数指的是对所有请求都响应
server.use(function(req, res, next){
    //  就是body-parser实现原理
    let str = '';
    req.on('data', (data)=>{
        str += data
    })
    req.on('end', ()=>{
        req.body = str;
        next()
    })
    
})

//  有'/'这个参数指的是只针对'/'的请求
server.use('/',function(req, res){
    console.log(req.body) 
})

相关文章

网友评论

      本文标题:express

      本文链接:https://www.haomeiwen.com/subject/mflcrqtx.html