node搭建后台的实现步骤

 更新时间:2023年08月08日 10:07:09   作者:小菜鸟学代码··  
本文介绍了使用Node.js搭建后台的实现步骤,文章详细阐述了每个步骤的实现过程,并给出了示例代码,对于想要了解如何使用Node.js搭建后台的读者具有一定的参考价值

1.首先安装node,express,express-generator (4.x版本把generator分离出来了所以需要单独安装)

npm i express express-generator -g 

2.进入项目文件输入命令 express 项目名 npm i 安装响应的包,那么简易的后端框架就给你搭好了,默认端口是3000 在bin下面的www修改

我一般习惯于改写app.js然后把bin文件删了,因为越简洁越好改写app

var http=require('http')
var server=http.createServer(app)
//省略中间  然后在最后的导出app删除 直接监听
server.listen('3030',()=>{console.log('服务器启动成功');})

最后修改package.json,由于每个人的习惯我习惯启用用dev 启动在脚本scripts修改

 "scripts": {
    "dev": "nodemon ./app.js"
  },

注意这里我安装了nodemon 使用的是热模块替换 也就是实时刷新

3.安装数据库mysql

npm i mysql -D 

var mysql = require('mysql')
var conPool = mysql.createPool({
    host: '127.0.0.1',
    port: 3306,
    user: 'root',
    password: "123456",
    database: 'yg',
    connectionLimit: 10,
     queueLimit: 10,
     multipleStatements: true
})
module.exports = function exec(sql, params, callBack) {
    console.log(111);
    conPool.getConnection((err, coon) => {
        if (err) {
            console.log('链接失败');
            return
        } else {
            coon.query(sql, params, callBack)
            coon.release()
        }
    })
}

然后就是在index中测试

详细的数据库操作就不说了

4.下面进行路由的二次封装

首先在外面创建一个路由请求的文件app/index.js

//这是处理执行数据库语句的
const exec = require('../unil/db')
/* GET home page. */
init=(req,res)=>{
  exec('select * from goods_type_info where 1=1', [], (err, result) => {
    if (err) {
      console.log('服务链接出错');
    } else {
      res.send({code:200000,data:result})
    }
  })
}
module.exports = {init};
//然后在需要的文件中调用就行
let getDate=require('../app/index')
/* GET home page. */
router.get('/',getDate.init);//这是哪个路由执行哪条语句 这是处理路由的 第一个是路由 第二个是路由执行的方法  如果路由是嵌套的则需要拼接

这里面的分类可以在细一点 比如哪个页面用到的那些路由统统分离然后统一导入另外expres快速创建的模板是不需要导入 body-parser 的第一个是因为被弃用了,第二个是因为他用了 app.use(express.json());app.use(express.urlencoded({ extended: false })); 代替了

在这里前端记得发起的请求头是这种格式 不然在后端接收的数据格式有问题 不同的格式有不同的写法 ,详细的百度 Content-Type

app.all('*', function (req, res, next) {             //设置跨域访问
  //设置允许跨域的域名,*代表允许任意域名跨域
  res.header("Access-Control-Allow-Origin", "http://localhost:8000");
  //允许的header类型
  // res.header("Content-Type", "application/x-www-form-urlencoded");
  // 设置请求头中允许携带的参数
  res.header("Access-Control-Allow-Headers", "Content-Type,request-origin");
  // 允许客户端携带证书式访问。保持跨域请求中的Cookie。注意:此处设true时,Access-Control-Allow-Origin的值不能为 '*'
  res.header("Access-Control-Allow-Credentials", "true");
  res.header("Access-control-max-age", 3600);
  //跨域允许的请求方式 
  res.header("Access-Control-Allow-Methods", "DELETE,PUT,POST,GET,OPTIONS");
  next();
});

这样就能快速的搭建好一个简单的后台框架

在这里我补充一点遇到的问题,就是如果你是本地搭建的,前端开启必须要写端口号,不然很容易造成假跨域,造成前端请求,后端保存数据,在第二次请求的时候拿不到session

到此这篇关于node搭建后台的实现步骤的文章就介绍到这了,更多相关node搭建后台内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • nodejs图片处理工具gm用法小结

    nodejs图片处理工具gm用法小结

    这篇文章主要介绍了nodejs图片处理工具gm用法小结,详细的介绍了gm的使用,还有图片处理的实例,非常具有实用价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-12-12
  • nodejs中内置模块fs,path常见的用法说明

    nodejs中内置模块fs,path常见的用法说明

    这篇文章主要介绍了nodejs中内置模块fs,path常见的用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • 详解在Node.js中发起HTTP请求的5种方法

    详解在Node.js中发起HTTP请求的5种方法

    这篇文章主要介绍了详解在Node.js中发起HTTP请求的5种方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-01-01
  • Node.js中readline模块实现终端输入

    Node.js中readline模块实现终端输入

    本文主要介绍了Node.js中readline模块实现终端输入,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • Node.js全局处理响应并进行异常管理

    Node.js全局处理响应并进行异常管理

    这篇文章主要为大家介绍了Node.js全局处理响应并进行异常管理示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04
  • NodeJS中利用Promise来封装异步函数

    NodeJS中利用Promise来封装异步函数

    这篇文章主要介绍了NodeJS中利用Promise来封装异步函数,使用统一的链式API来摆脱多重回调的噩梦,非常的实用的小技能,希望小伙伴们能够喜欢
    2015-02-02
  • Node.js + express实现上传大文件的方法分析【图片、文本文件】

    Node.js + express实现上传大文件的方法分析【图片、文本文件】

    这篇文章主要介绍了Node.js + express实现上传大文件的方法,结合实例形式分析了Node.js + express针对图片、文本文件上传操作实现方法及相关操作注意事项,需要的朋友可以参考下
    2019-03-03
  • 使用npm发布Node.JS程序包教程

    使用npm发布Node.JS程序包教程

    这篇文章主要介绍了使用npm发布Node.JS程序包教程,本文讲解了配置package.json、注册npm帐号、发布程序包等内容,需要的朋友可以参考下
    2015-03-03
  • node.js项目如何创建websocket模块

    node.js项目如何创建websocket模块

    这篇文章主要介绍了node.js项目如何创建websocket模块问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-09-09
  • 基于Node.js的http模块搭建HTTP服务器

    基于Node.js的http模块搭建HTTP服务器

    这篇文章主要为大家介绍了基于Node.js的http模块来搭建HTTP服务器的示例过程详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步
    2022-02-02

最新评论