教你从零开始在Windows系统上搭建一个node.js后端服务项目

 更新时间:2024年11月09日 10:19:03   作者:梅秃头  
这篇文章详细介绍了如何在Windows环境下搭建一个Node.js项目并使用Express框架,包括安装Node.js、配置环境、创建项目、安装Express、编辑代码、运行项目、集成Nodemon实现热部署等步骤

一、下载node.js及配置环境

网上很多安装教程,此处就不再赘述了

版本信息

C:\Users\XXX>node -v
v20.15.0

C:\Users\XXX>npm -v
10.7.0

了解更多npm知识:npm 中文网 (nodejs.cn) 

二、搭建node.js项目及安装express框架

在任意位置创建一个项目文件夹,此处项目文件夹名为test(文件夹路径:D:\test)

以管理员身份打开windows命令行工具或powershell命令行工具(记住:必须以管理员身份打开,不要使用win+R的方式或者文件夹输入cmd的方式打开,否则后面安装express会失败)

左下角搜索框输入命令提示符,打开windows命令行工具(没有安装powershell,推荐使用这种方式)

打开powershell命令行工具(需要安装好powershell才可以打开)

打开命令行,进入创建的test项目文件夹

创建package.json,命令行输入下列命令

npm init 

name 项目名称
version 项目版本号
description 项目描述信息
entry point 项目入口文件
test command 项目启动时脚本命令
git repository Git仓库地址
keywords 关键词
author 作者

一路回车键

创建test项目的文件夹出现了pakage.json文件,打开查看里面的信息

安装express

npm install express --save

安装完成,如果是以管理员身份打开的命令行一般不会报错

安装好了后出现下列两个文件(夹)

package文件内容随之改变,由于程序主入口是index.js,所以要创建index.js文件,(文件后缀必须是js)

编辑index.js文件内容,为了快速,我们直接找到express官网,打开里面的示例

Express - 基于 Node.js 平台的 web 应用开发框架 - Express中文文档 | Express中文网 (expressjs.com.cn)

package.json |npm 文档 (npmjs.com)

复制Hello World示例 到index.js文件中

修改下打印日志的内容

const express = require('express')
const app = express()
const port = 3000

app.get('/', (req, res) => {
  res.send('Hello World!')
})

app.listen(port, () => {
  console.log(`Example app listening on http://localhost:${port}`)
})

运行项目,输入命令node 入口文件.js

 咱这边的入口文件是index.js,稍微修改下

node index.js

启动成功后,浏览器访问服务,输入控制台输出的访问地址:http://localhost:3000

到这,就成功了

为了方便后续管理代码,新建一个名为src文件夹,将之前创建的index.js文件移入src中(index.js移动到src文件夹后,启动时要进入index.js的上一级文件夹再进行启动,D:\test\src> node index.js)

三、集成nodemon,实现代码热部署

不需要热部署,可以不用跟着下面的步骤

安装nodemon,命令行输入:npm i nodemon -g

接下来开始实现热部署,修改pakage.json文件,修改两处:main入口文件和scripts对象

"main": "路径从点击进入项目的下一级开始,直到index.js文件"

{
  "name": "test",
  "version": "1.0.0",
  "description": "测试创建node项目",
  "main": "src/index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
	"start":"nodemon --watch src --watch config src/index.js"
  },
  "author": "小红",
  "license": "ISC",
  "dependencies": {
    "express": "^4.21.1"
  }
}

输入npm run start启动项目,终止项目ctrl+C

热部署的好处在于,不需要重启项目,刷新浏览器即可完成代码更新,如何判断是否成功热部署,一是命令行绿色部分执行代码,二是不重启项目,修改index.js项目的内容,保存后刷新浏览器查看显示内容是否变化,有变化则成功(修改端口则需要重启服务)

四、Express 应用程序生成器

照旧,第一步创建项目文件夹,管理员身份进入命令行,创建pakage.json文件,执行npm init

通过应用生成器工具 express-generator 可以快速创建一个应用的骨架。

你可以通过 npx (包含在 Node.js 8.2.0 及更高版本中)命令来运行 Express 应用程序生成器

npx express-generator

执行完npx express-generator命令就可以快速生成以下项目结构文件

由于项目结构是使用生成器生成的,需要安装项目内的依赖包,执行一下npm install

打开app.js(原默认是index.js,没有选择直接回车,而是在后面输入app.js后再回车,因此我的入口文件就改成了app.js),可以看到,文件内是没有配置端口,以及启动打印的数据的,在这里可以自行手动配置下(app.get()或app.set()需要在var app = express();后面使用)

pakage.json

启动项目npm run start

没有设置打印日志是这样的

实现代码热部署

1.项目安装nodemon,执行npm install nodemon --save

2.优化目录结构,创建src文件夹,将app.js移入

3.修改app.js文件内容,app.js引用路由文件不再是同级关系,二是上一级文件夹,因此将.改为..

4.修改pakage.json文件的scripts对象start的配置,监听src目录

启动项目后,任意修改app.js文件在浏览器上显示的内容

总结

到此这篇关于在Windows系统上搭建一个node.js后端服务项目的文章就介绍到这了,更多相关Windows搭建node.js后端服务项目内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 详解node-ccap模块生成captcha验证码

    详解node-ccap模块生成captcha验证码

    本篇文章主要介绍了node-ccap模块生成captcha验证码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07
  • node.js中实现双重身份验证机制的方法详解

    node.js中实现双重身份验证机制的方法详解

    双重身份验证(Two-factor authentication)是一种安全机制,它要求用户提供两种不同的身份验证因素来访问他们的帐户,下面我们就来学习一下如何使用speakeasy在nodejs中实现双重身份验证吧
    2023-10-10
  • Nodejs + sequelize 实现增删改查操作

    Nodejs + sequelize 实现增删改查操作

    这篇文章主要介绍了Nodejs + sequelize 实现增删改查操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • Koa从零搭建到Api实现项目的搭建方法

    Koa从零搭建到Api实现项目的搭建方法

    这篇文章主要介绍了Koa从零搭建到Api实现项目的搭建方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • 基于node下的http小爬虫的示例代码

    基于node下的http小爬虫的示例代码

    本篇文章主要介绍了基于node下的http小爬虫的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-01-01
  • typescript nodejs 依赖注入实现方法代码详解

    typescript nodejs 依赖注入实现方法代码详解

    今天分享的是用typescript语言实现的ioc模式,这边用到的主要组件是 reflect-metadata 这个组件可以获取或者设置元数据信息,接下来通过本文给大家介绍typescript nodejs 依赖注入实现方法,需要的朋友可以参考下
    2019-07-07
  • Nodejs中的this详解

    Nodejs中的this详解

    本文给大家汇总介绍了下nodejs中的this,nodejs中的this和在浏览器中javascript中的this还是有很大的差异的,小伙伴们可以研究下
    2016-03-03
  • Node.js操作MongoDB数据库实例分析

    Node.js操作MongoDB数据库实例分析

    这篇文章主要介绍了Node.js操作MongoDB数据库,结合实例形式分析了node.js连接MongoDB数据库以及增删改查等相关操作技巧,需要的朋友可以参考下
    2020-01-01
  • NestJS系列核心概念之Module模块示例详解

    NestJS系列核心概念之Module模块示例详解

    这篇文章主要为大家介绍了NestJS系列核心概念之Module模块示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09
  • node.js去水印方法实例分析

    node.js去水印方法实例分析

    这篇文章主要介绍了node.js去水印方法,结合实例形式分析了node.js基于第三方平台实现去水印的相关交互与操作技巧,需要的朋友可以参考下
    2023-04-04

最新评论