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搭建后台内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Node环境中JS代码缺少window对象的原因和解决方案

    Node环境中JS代码缺少window对象的原因和解决方案

    你可能会在某些情况下需要在Node环境下运行JavaScript代码,但你也可能会遇到一个常见的问题:缺少window环境,在本文中,我们将深入探讨这个问题的原因,并提供解决方案,需要的朋友可以参考下
    2023-08-08
  • yarn安装路径的成功修改并配置环境

    yarn安装路径的成功修改并配置环境

    Yarn是facebook发布的一款取代npm的包管理工具,下面这篇文章主要给大家介绍了关于yarn安装路径的成功修改并配置环境的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-05-05
  • nodejs控制台打印高亮代码的实现方法

    nodejs控制台打印高亮代码的实现方法

    这篇文章主要给大家介绍了关于nodejs控制台打印高亮代码的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-05-05
  • Node绑定全局TraceID的实现方法

    Node绑定全局TraceID的实现方法

    这篇文章主要介绍了Node 绑定全局 TraceID的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11
  • node.js安装超详细步骤教程(推荐!)

    node.js安装超详细步骤教程(推荐!)

    其实Node.js就是运行在服务端的JavaScript,Node.js是一个基于Chrome JavaScript运行时建立的一个平台,下面这篇文章主要给大家介绍了关于node.js安装超详细步骤教程的相关资料,需要的朋友可以参考下
    2023-06-06
  • nodejs log4js 使用详解

    nodejs log4js 使用详解

    这篇文章主要介绍了nodejs log4js 使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • Nodejs中读取中文文件编码问题、发送邮件和定时任务实例

    Nodejs中读取中文文件编码问题、发送邮件和定时任务实例

    这篇文章主要介绍了Nodejs中读取中文文件编码问题、发送邮件和定时任务实例,本文使用了3个模块来解决这3个需求,并给出了代码操作实例,需要的朋友可以参考下
    2015-01-01
  • NodeJS创建基础应用并应用模板引擎

    NodeJS创建基础应用并应用模板引擎

    这篇文章主要介绍了NodeJS创建基础应用并应用模板引擎的相关资料,需要的朋友可以参考下
    2016-04-04
  • nodejs个人博客开发第二步 入口文件

    nodejs个人博客开发第二步 入口文件

    这篇文章主要为大家详细介绍了nodejs个人博客开发的入口文件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04
  • 详解Nodejs的timers模块

    详解Nodejs的timers模块

    本篇文章主要介绍了Nodejs的timers模块,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12

最新评论