零基础搭建Node.js、Express、Ejs、Mongodb服务器及应用开发入门

零基础搭建Node.js、Express、Ejs、Mongodb服务器及应用开发入门

本文将介绍如何搭建一个基于 Node.js、Express、Ejs、Mongodb 的服务器,以及如何开发应用。如果您还没有 Node.js 的基础,可以先学习一下,并确保已经在您的计算机上安装了 Node.js 环境。

安装

  1. 安装 Node.js 以及 npm。可以在 Node.js 官网上下载对应平台的安装包进行安装。

  2. 安装 Express 和 Ejs。打开命令行工具,输入以下命令安装。

npm install express ejs --save

上述命令会自动下载和安装 Express 和 Ejs 以及其依赖项。

  1. 安装 Mongodb。可以在 Mongodb 官网上下载对应平台的安装包进行安装。

建立Express应用

在安装好 Mongodb 和 Express 之后,我们来建立一个 Express 应用。

  1. 打开命令行工具,进入要建立应用的目录位置,创建一个空目录,比如 "myapp",并进入该目录。
mkdir myapp
cd myapp
  1. 安装 body-parser 和 Mongodb 的官方驱动程序。
npm install body-parser mongodb --save
  1. 在 myapp 目录下创建一个名为 "app.js" 的文件,并写入以下代码:
// 引入依赖
var express = require('express');
var bodyParser = require('body-parser');
var MongoClient = require('mongodb').MongoClient;

// 创建应用
var app = express();

// 设置静态文件夹
app.use(express.static(__dirname + '/public'));

// 设置视图引擎
app.set('view engine', 'ejs');

// 设置 bodyParser
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));

// 处理根路径请求
app.get('/', function(req, res) {
  res.render('index');
});

// 连接 Mongodb
MongoClient.connect('mongodb://localhost:27017/myapp', function(err, db) {
  // 处理连接错误
  if (err) throw err;

  console.log('MongoDB connected!');

  // 处理表单提交请求
  app.post('/submit', function(req, res) {
    // 插入数据
    db.collection('mycollection').insertOne(req.body, function(err, result) {
      if (err) throw err;

      console.log('Data inserted!');
      res.redirect('/');
    });
  });

  // 获取数据列表
  app.get('/data', function(req, res) {
    db.collection('mycollection').find().toArray(function(err, results) {
      if (err) throw err;

      res.json(results);
    });
  });
});

// 启动应用
app.listen(3000, function() {
  console.log('App listening on port 3000!');
});

上述代码完成以下操作:

  • 引入必须的依赖项。
  • 创建一个新的 Express 应用。
  • 设置静态文件夹和视图引擎。
  • 配置 bodyParser。
  • 处理根路径请求并渲染 index.ejs 模板。
  • 连接 Mongodb 并添加 "/submit" 和 "/data" 路由。
  • 启动服务器监听 3000 端口。

  • 创建 "public" 目录和一个新的名为 "index.ejs" 的文件,用于展示我们的表单和数据列表。

示例说明

示例 1:添加数据

我们可以通过填写一个表单提交数据到后端,并将其保存到 Mongodb 中。

  1. 启动服务。在 myapp 目录下,运行以下命令启动服务器。
node app.js
  1. 打开浏览器,输入 "http://localhost:3000" 访问应用。

  2. 添加数据。提交一个带有以下信息的表单:

<form action="/submit" method="POST">
  <input type="text" name="name" placeholder="Name">
  <input type="text" name="email" placeholder="Email">
  <button type="submit">Submit</button>
</form>
  1. 查看数据。可以通过访问 "http://localhost:3000/data" 查看刚才添加的数据。

示例 2:更改显示列表

我们可以修改 "index.ejs" 文件,使其显示数据库中的数据。

  1. 打开 "index.ejs" 文件,并替换其中的内容。
<h1>Form</h1>

<form action="/submit" method="POST">
  <input type="text" name="name" placeholder="Name">
  <input type="text" name="email" placeholder="Email">
  <button type="submit">Submit</button>
</form>

<h1>Data</h1>

<% if (data.length) { %>
  <ul>
    <% data.forEach(function(item) { %>
      <li><%= item.name %> - <%= item.email %></li>
    <% }); %>
  </ul>
<% } else { %>
  <p>No data found.</p>
<% } %>

上述代码完成以下操作:

  • 显示表单,用来提交数据。
  • 显示数据列表。如果数据列表不为空,则显示一个带有列表项的无序列表。

  • 重新启动服务器,并提交一些数据。

  • 查看列表。现在,当我们访问 "http://localhost:3000",可以看到页面已经显示了添加的数据。

结论

通过上述步骤,我们已经搭建了一个完整的 Node.js、Express、Ejs、Mongodb 服务器,并开发了一个简单的应用。您可以通过不断学习来增强该应用的功能,甚至可以结合其他库和技术来构建新的应用。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:零基础搭建Node.js、Express、Ejs、Mongodb服务器及应用开发入门 - Python技术站

(0)
上一篇 2023年5月25日
下一篇 2023年5月25日

相关文章

  • 教你在容器中使用nginx搭建上传下载的文件服务器

    首先我们先来了解一下如何在容器中使用nginx搭建上传下载的文件服务器。 攻略概述 安装Docker 编写nginx配置 构建镜像并运行容器 测试上传及下载功能 安装Docker 安装Docker是本教程搭建文件服务器的前置条件,可以通过以下命令在Ubuntu系统中完成安装: sudo apt update sudo apt install docker.i…

    人工智能概览 2023年5月25日
    00
  • node.js+postman+mongodb搭建测试注册接口的实现

    首先,我们需要明确注册接口需要实现哪些功能,一般来说,注册接口需要接收用户提交的信息(例如用户名和密码),对这些信息进行验证,如果验证通过,则将用户的信息保存到数据库中并返回成功信息,否则返回验证失败信息。 下面是搭建测试注册接口的完整攻略: 1. 环境准备 在开始之前,我们需要安装和配置以下几个工具: Node.js:用于运行后端服务 Postman:用于…

    人工智能概论 2023年5月25日
    00
  • 未来十年Python的前景会怎样?Python未来展望

    未来十年Python的前景展望 Python是一种高级的、动态的、面向对象的编程语言,它的应用范围非常广泛,包括Web开发、数据分析、人工智能、科学计算等领域,同时Python的语法简单易懂,学习门槛较低,深受开发者青睐。那么,未来十年Python的前景会怎样呢?下面从几个方面进行展望。 1. Python社区的繁荣发展 Python有一个庞大的社区,包括开…

    人工智能概览 2023年5月25日
    00
  • C语言封装函数字符串练习汇总分享

    针对“C语言封装函数字符串练习汇总分享”的完整攻略,我将详细解释以下内容。 标题 首先我们需要确定标题,一个好的标题能够准确展示本文的主题,因此我们可以选择:“C语言封装函数字符串练习汇总分享”。 介绍 在介绍部分,我们需要说明C语言中封装函数的概念以及其作用,具体内容如下: C语言是一种面向过程的编程语言,也就是说程序执行的流程是从头到尾依次执行的。但是,…

    人工智能概览 2023年5月25日
    00
  • python OpenCV 实现高斯滤波详解

    Python OpenCV实现高斯滤波详解 什么是高斯滤波 高斯滤波(Gaussian blur)是一种常见的图像滤波算法,它通过将每个像素的一个区域内的像素值加权平均,产生一个新的像素值来模糊图像。这个加权平均的权重值是根据距离像素的距离而计算出来的。离当前像素越近的像素会被赋予更高的权重,而离当前像素越远的像素则会被赋予更低的权重。 高斯滤波最常用于对图…

    人工智能概论 2023年5月25日
    00
  • ChatGPT编程秀之最小元素的设计示例详解

    以下是ChatGPT编程秀之最小元素的设计示例的流程和内容: ChatGPT编程秀之最小元素的设计示例详解 简介 ChatGPT编程秀是一项比赛,旨在让选手通过编写Chatbot并使用GPT模型来自主完成对话任务。在比赛中,最小元素的设计是至关重要的,因为它们是构建完整Chatbot的基础。本文将为大家详细介绍如何设计Chatbot的最小元素,并给出两个具体…

    人工智能概论 2023年5月25日
    00
  • Django教程笔记之中间件middleware详解

    Django教程笔记之中间件Middleware详解 Django是一个广受欢迎的Web开发框架,中间件是Django框架中一个非常有用的部分。中间件在Django框架中扮演着很重要的角色,用于处理请求和响应。中间件可以保存请求和响应,在处理结束后修改它们或在它们被发送到服务器或客户端之前拦截它们。 什么是中间件Middleware? 中间件是Django框…

    人工智能概览 2023年5月25日
    00
  • Centos 通过 Nginx 和 vsftpd 构建图片服务器的教程(图文)

    接下来我将详细讲解“Centos 通过 Nginx 和 vsftpd 构建图片服务器的教程(图文)”的完整攻略。 1. 确认环境 在开始构建图片服务器之前,我们需要确认以下环境: 操作系统:CentOS 7 Web 服务器:Nginx FTP 服务器:vsftpd 如果您的环境满足以上要求,那么就可以开始构建图片服务器了。 2. 安装 Nginx 首先我们需…

    人工智能概览 2023年5月25日
    00
合作推广
合作推广
分享本页
返回顶部