21xrx.com
2024-11-25 01:18:06 Monday
登录
文章检索 我的文章 写文章
如何使用Node.js搭建一个简单的博客系统?
2023-07-10 12:10:39 深夜i     --     --
Node js 搭建 博客系统 简单 如何

Node.js是一个基于Chrome V8引擎的开源 JavaScript 运行时,它无需浏览器的支持即可在服务器端运行 JavaScript,是服务器端应用程序开发中的一种常用技术。在这里,我们将使用 Node.js 开发一个简单的博客系统,下面是具体步骤:

1. 安装Node.js

首先我们需要先安装Node.js,如果您已经安装了Node.js,可以跳过此步骤。Node.js的下载地址为:https://nodejs.org/en/download/,可以根据自己的操作系统下载相应版本的Node.js并安装。

2. 初始化项目

在开始之前,我们需要先在本地创建一个项目。打开命令行终端,进入到您想要创建项目的文件夹中,输入以下命令:


npm init

这个命令会创建一个 "package.json" 文件,里面包含了项目的基本信息、依赖等。

3. 安装相关模块

接下来,我们需要安装一些必要的模块。在命令行终端中输入以下命令:


npm install express body-parser ejs mongoose --save

这个命令会安装 "Express" 框架、"Body-parser" 处理 POST 请求数据、"EJS" 模板引擎和 "Mongoose" 操作 MongoDB 数据库等模块。其中 "--save" 表示将模块添加到 "package.json" 文件中。

4. 创建基本文件

接下来,我们需要创建常用的文件,包括 "app.js"(应用启动文件)、"public"(静态资源文件夹)和 "views"(视图文件夹)等。在命令行终端中输入以下命令:


mkdir public views

touch app.js views/index.ejs

这个命令会创建 "public" 和 "views" 文件夹,并创建 "app.js" 文件和 "views/index.ejs" 文件。

5. 编写代码

接下来,我们需要编写代码。打开 "app.js" 文件,在文件头部添加以下代码:


const express = require('express')

const bodyParser = require('body-parser')

const mongoose = require('mongoose')

const app = express()

// 配置Body-parser

app.use(bodyParser.urlencoded({ extended: true }))

app.use(bodyParser.json())

// 配置EJS引擎

app.set('view engine', 'ejs')

app.set('views', './views')

// 配置静态资源文件夹

app.use(express.static('public'))

// 建立MongoDB连接

const db = mongoose.connect('mongodb://localhost/blog', { useNewUrlParser: true })

db.then(() => console.log('MongoDB Connection Successed.'))

// 监听端口

app.listen(3000, () => {

 console.log('Server is running at http://localhost:3000')

})

这个代码会初始化一个 Express 项目,并配置 EJS 引擎、静态资源文件夹和 MongoDB 连接等。

打开 "views/index.ejs" 文件,添加以下代码:


<!DOCTYPE html>

<html lang="en">

<head>

 <meta charset="UTF-8">

 <title>Node.js Blog</title>

</head>

<body>

 <h1>Welcome to Node.js Blog</h1>

</body>

</html>

这个代码会创建一个简单的 HTML 文件,用于显示博客首页。

6. 启动应用

完成以上步骤后,可以在命令行终端输入以下命令启动应用:


node app.js

启动后,在浏览器中访问 "http://localhost:3000/" 可以看到刚刚创建的简单页面。

至此,我们完成了一个简单的博客系统的搭建。接下来,可以根据自己的需求进行修改和扩展,以实现更丰富的功能。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复