Sequlize、Express、Node fs综合项目架构

来源:互联网 发布:淘宝创意广告视频 编辑:程序博客网 时间:2024/06/18 05:21

Express框架提供了配置路由的接口,这里在处理客户端发送来的请求有有四种,其中Get请求很平常,按照基本操作执行就可以了,当处理客户端发来的Post请求时,这就有了说法,有三种形式,[这里需要注意Post请求提交过了的如果时文件(图像)]

1. 'Content-Type':'multipart/form-data',body:formData   2.'Content-Type':'application/json',body:JSON.stringify({a:1})3.'Content-Type':'application/x-www-form-urlencoded',body:'a=1&b=2&c=3'

参考资料如下:

1 body-parser中间件:https://www.npmjs.com/package/body-parser

2.multer中间件:https://github.com/expressjs/multer

3.静态文件服务器: http://www.expressjs.com.cn/starter/static-files.html

 const express = require('express');  const fs = require('fs');  const bodyParser = require('body-parser');  const multer  = require('multer')  const app =  express(); //使用static中间件实现文件服务 app.use('/source',express.static('./public')); //使用中间件处理提交的数据 //可以处理'Content-Type':'application/json', //的body数据 app.use(bodyParser.json()); //使用此中间件处理 //'Content-Type':'application/x-www-form-urlencoded' app.use(bodyParser.urlencoded({ extended: false })) //'Content-Type': 针对post请求是文件,这里any值得时接收所有的文件类型 app.use(multer().any()) app.post('/api/postMessage',(request,response)=>{     console.log(request.body);     console.log(request.files);     const image = request.files[0];     const buffer = image.buffer;     const date = new Date();     fs.writeFile(`./public/image/${date}.png`, buffer,(err)=>{     if (err) {         console.log(err);     } else {         console.log('ok.');     } });     response.json({         success:true,     }) })
//引入express框架 const  express = require('express'); //创建一个App const app = express(); //使用中间件 const bodyParser = require('body-parser'); app.use(bodyParser.json()); //配置请求路由 const login = require('./Login'); app.post('/api/login',login); //开启监听 const server = app.listen(3000, function () {     console.log('开启监听'); });
 module.exports = (req,res)=>{     console.log('收到请求');     //req.body是app提交上来的数据     console.log(req.body);     if (req.body.name == req.body.pwd) {         const d = {             success:true,             data:{                 uid:1001,                 token:'xxxx'             }         }         res.json(d);     }     else {         const d = {             success:false,             message:'密码错误',         }         res.json(d);     }     //是服务器需要返回给App的数据 }
原创粉丝点击