node.js利用express自动搭建项目的全过程

 更新时间:2021年04月09日 11:46:10   作者:web前端小菜鸡  
这篇文章主要给大家介绍了关于node.js利用express自动搭建项目的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

一、安装express库和生成器

打开cmd输入命令:  yarn global add express express-generator

解释:
上面里两个模块分别表示库和生成器,在express3时,安装express会自动的给你安装生成器express-generator ,但是在express4时,他们就被分开了,所以需要分别安装。

安装好后可以通过命令:express --version 检查是否安装成功。

出现版本号即为安装成功(如下图所示)。

二、express生成器自动创建express项目

输入命令:express nodejs(如下图所示即为成功)

成功之后的目录:

三、跳转到package.json目录下安装相关的包

输入命令: yarn 或者 cnpm i  或者 npm i

四、启动项目

输入命令:npm run start

打开浏览器,访问127.0.0.1:3000就能获取访问我们的项目了

五、项目目录解释

bin:存放可执行文件
public:存放js、css、img等文件
router:存放路由文件
views:存放视图文件或者说模版文件
app.js:启动文件(入口文件)
package.json:存储着工程的信息及模块依赖,当在 dependencies 中添加依赖的模块时,运行 npm install,npm 会检查当前目录下的 package.json,并自动安装所有指定的模块
node_modules:存放 package.json 中安装的模块,当你在 package.json 添加依赖的模块并安装后,存放在这个文件夹下

参考链接:https://www.jb51.net/article/209247.htm

六、在此项目中如何开发

首先在routes中新建一个test.js文件

var express = require('express');
var router = express.Router();

router.get('/', function (req, res, next) {
	res.send('我是接口返回值');
});

module.exports = router;

然后在app.js中加入下面代码

var testRouter = require('./routes/test');
app.use('/test', testRouter);

然后打开浏览器控制台用fetch请求我们刚才写的接口

fetch('http:localhost:3000/test')
.then(res=>{
  return res.text()
}).then(res=>{
  console.log(res)
})

我们发现出现了跨域问题,这是因为我们在nodejs中没有添加跨域所导致的。

将下面的跨域的代码添加到app.js中

//设置跨域访问(设置在所有的请求前面即可)
app.all("*", function (req, res, next) {
	//设置允许跨域的域名,*代表允许任意域名跨域
	res.header("Access-Control-Allow-Origin", "*");
	//允许的header类型
	res.header("Access-Control-Allow-Headers", "content-type");
	//跨域允许的请求方式 
	res.header("Access-Control-Allow-Methods", "DELETE,PUT,POST,GET,OPTIONS");
	if (req.method == 'OPTIONS')
		res.sendStatus(200); //让options尝试请求快速结束
	else
		next();
});

然后重启一下项目,这样就可以正常访问了

在项目中修改了内容就需要我们手动重启项目,有点麻烦,我们再安装一个插件即可解决这个烦恼。

七、使用nodemon自动重启服务

安装nodemon模块

输入命令:npm i nodemon -S

创建nodemon.json文件

在项目的根目录下创建:nodemon.json文件

{
	"restartable": "rs",
	"ignore": [".git", ".svn", "node_modules/**/node_modules"],
	"verbose": true,
	"execMap": {
		"js": "node --harmony"
	},
	"watch": [],
	"env": {
		"NODE_ENV": "development"
	},
	"ext": "js json njk css js "
}

使用nodemon模块

在你的package.json文件中,添加一行脚本代码

"dev": "nodemon ./bin/www"

代码已经放到我的github仓库,附上链接:github.com/wuguanfei/n

总结

到此这篇关于node.js利用express自动搭建项目的文章就介绍到这了,更多相关node.js express自动搭建项目内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • node.js基于dgram数据报模块创建UDP服务器和客户端操作示例

    node.js基于dgram数据报模块创建UDP服务器和客户端操作示例

    这篇文章主要介绍了node.js基于dgram数据报模块创建UDP服务器和客户端操作,结合实例形式分析了node.js使用dgram数据报模块创建UDP服务器和客户端,以及进行UDP广播、组播相关操作技巧,需要的朋友可以参考下
    2020-02-02
  • nodejs 如何手动实现服务器

    nodejs 如何手动实现服务器

    这篇文章主要介绍了nodejs 如何手动实现服务器,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08
  • 使用nodejs解析json数据

    使用nodejs解析json数据

    这篇文章主要介绍了使用nodejs解析json数据,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-09-09
  • 如何自动化部署项目?折腾服务器之旅~

    如何自动化部署项目?折腾服务器之旅~

    这篇文章主要介绍了自动化部署项目,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • Nodejs中的this详解

    Nodejs中的this详解

    本文给大家汇总介绍了下nodejs中的this,nodejs中的this和在浏览器中javascript中的this还是有很大的差异的,小伙伴们可以研究下
    2016-03-03
  • Nodejs中session的简单使用及通过session实现身份验证的方法

    Nodejs中session的简单使用及通过session实现身份验证的方法

    session的本质使用cookie来实现。本文给大家介绍Nodejs中session的简单使用及通过session实现身份验证的方法,对node.js session相关知识感兴趣的朋友一起学习吧
    2016-02-02
  • 如何使用nexus3搭建npm私有仓库

    如何使用nexus3搭建npm私有仓库

    这篇文章主要介绍了如何使用nexus3搭建npm私有仓库,包括安装并运行私服的相关知识,本文结合实例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2024-03-03
  • nodejs socket服务端和客户端简单通信功能

    nodejs socket服务端和客户端简单通信功能

    这篇文章主要为大家详细介绍了nodejs socket服务端和客户端简单通信功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-09-09
  • Nodejs中自定义事件实例

    Nodejs中自定义事件实例

    这篇文章主要介绍了Nodejs中自定义事件实例,比较简单的一个例子,需要的朋友可以参考下
    2014-06-06
  • Node.js 服务器端应用开发框架 -- Hapi.js

    Node.js 服务器端应用开发框架 -- Hapi.js

    Hapi.js 是一个用来构建基于 Node.js 的应用和服务的富框架,使得开发者把重点放在便携可重用的应用逻辑而不是构建架构。内建输入验证、缓存、认证和其他 Web 应用开发常用的功能。
    2014-07-07

最新评论