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

yizhihongxing

零基础搭建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日

相关文章

  • Django Rest framework认证组件详细用法

    下面是Django Rest framework认证组件的详细用法攻略,包含两条示例说明: 1. 认证组件简介 Django Rest framework是一个功能强大的Web框架,提供了多种认证组件,用于保护Web应用程序中的敏感信息和资源,并确保只有授权用户才能访问它们。以下是Django Rest framework认证组件的列表: SessionAu…

    人工智能概论 2023年5月25日
    00
  • Java OCR tesseract 图像智能文字字符识别技术实例代码

    Java OCR tesseract 图像智能文字字符识别技术实例代码 简介 OCR(Optical Character Recognition,光学字符识别)是指通过扫描字符图像,然后识别图像中的字符来转换成可以编辑和搜索的可编辑文本格式的技术。本文介绍如何使用Java语言中的tesseract库实现OCR文本字符识别, 并提供两个相关的示例说明。 准备工…

    人工智能概论 2023年5月25日
    00
  • 使用Python自动化破解自定义字体混淆信息的方法实例

    使用Python自动化破解自定义字体混淆信息的方法需要以下步骤: 1. 获取字体文件 首先,需要获取目标网站使用的自定义字体文件。可以通过审查元素查看CSS样式表中对字体文件的引用,或是通过抓包工具获取字体文件的URL地址。 2. 解析字体文件 使用 FontTools 库解析字体文件,利用其中的 ttLib.TTFont 类读取字体文件,提取字体映射(Gl…

    人工智能概论 2023年5月25日
    00
  • 一键备份gitolite服务器的Shell脚本

    下面是“一键备份gitolite服务器的Shell脚本”的完整攻略: 1. 需求分析 gitolite是一款优秀的Git仓库管理工具,用于管理Git项目权限和访问。在使用gitolite时,我们需要对服务器进行备份以确保数据安全性。因此,需要编写一个Shell脚本,一键备份gitolite服务器。 2. 编写Shell脚本 2.1 确定备份目录和备份文件名称…

    人工智能概览 2023年5月25日
    00
  • Python使用Redis实现作业调度系统(超简单)

    下面是详细的攻略: Python使用Redis实现作业调度系统(超简单) 什么是Redis? Redis(Remote Dictionary Server)是一个使用ANSI C编写的开源、高性能、键值对存储数据库。Redis支持多种数据结构,包括字符串、哈希、列表、集合、有序集合。Redis的优势在于它具有高性能、高并发处理能力、持久化和lua脚本支持等特…

    人工智能概览 2023年5月25日
    00
  • ubuntu 18.04 安装opencv3.4.5的教程(图解)

    下面我会详细讲解“Ubuntu 18.04安装OpenCV 3.4.5的教程(图解)”。 1. 下载OpenCV安装包 首先,从OpenCV官网https://opencv.org/releases/下载OpenCV 3.4.5版本。我们选择的是源码形式的安装包。 2. 安装依赖库 在安装OpenCV前,需要先安装一些必要的依赖库,可以通过以下命令完成: s…

    人工智能概览 2023年5月25日
    00
  • 使用Django简单编写一个XSS平台的方法步骤

    下面是使用 Django 简单编写一个 XSS 平台的方法步骤: 1. Django 项目的基本设置 首先,需要创建一个 Django 项目。在终端输入以下命令: django-admin startproject XssPlatform 这将会创建一个名为 XssPlatform 的 Django 项目。接下来,切换到该项目的根目录下并执行以下命令创建一些…

    人工智能概论 2023年5月25日
    00
  • Python中True(真)和False(假)判断详解

    Python中True和False判断详解 在Python中,我们经常需要判断一个条件是否成立,然后根据条件的结果去决定程序的下一步操作。在这里,我们就需要用到Python中的True和False。本文将会探讨Python中True和False的判断方法以及使用方法。 True和False的概念 在Python中,True是一个常量,它表示整数1,而Fals…

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