编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

七爪源码:协作绘图应用程序:简介

wxchong 2024-06-19 22:20:24 开源技术 32 ℃ 0 评论

介绍

这是一篇关于使用 Javascript、Express (NodeJS)、Sequelize 和 SQLite 制作协作绘图应用程序的教程文章系列。我们还将使用 Web 套接字、HTML5 画布和面向对象编程。这个项目是使用 Node 14.18.2 编写的,但实际上任何相当现代的 Node 版本都应该没问题。请注意,我们没有为此项目使用前端框架。

这适用于已经基本掌握 Javascript、SQL 等的程序员。这是一个比你在网上找到的典型初学者教程更高级的东西的好项目。我鼓励您跟随项目,重命名事物并以您认为更有意义的方式做事。我还鼓励您对项目进行自己的添加。以下教程只能让您到目前为止。添加您自己的独特添加显示对代码的真正理解。


设置

创建文件夹并初始化 npm(mkdir collab-draw;cd collab-draw;npm init 等)后,就该安装所需的后端节点模块了。

npm install express body-parser path sequelize sqlite3 ws --save

为了组织我们的代码,我们将创建两个文件夹,客户端和服务器。 在服务器中,我们将创建 SQLite 数据库。 我们只需要一张表,叫做 session。 这是我们将存储在应用程序中绘制的图像的地方。 使用您选择的工具(我使用 sqlite3,一个命令行工具)创建 SQLite 数据库,并按如下方式创建会话表:

CREATE TABLE session (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, image TEXT);


概念证明

在开始过多的实际项目之前,让我们确保我们可以让 Express 服务器处理 API 请求并为前端提供服务。

在客户端文件夹中,创建 index.html,如下所示:

<html>
<head>
  <title>Collaborative Drawing App</title>
</head>
<body>
  <b>testing!</b>
</body>
</html>

在 server 文件夹中,创建 index.js,如下所示:

const express = require('express');
const bodyParser = require('body-parser');
const path = require('path');
const PORT = 3000;

const app = express();

app.use(bodyParser.json());
app.use(express.static(path.join(__dirname + '/../client')));

app.get('/api/test', (req, res) => {
  res.end('Test works!');
});

app.listen(PORT, () => {
  console.log(`App is live on port ${PORT}`);
});

然后运行 node server/index.js

现在我们可以检查代码是否正常工作。 在浏览器中访问 http://localhost:3000。 你应该看到“测试!” 然后访问 http://localhost:3000/api/test ,应该会显示“test works!”

在下一篇文章中,我们将了解前端的基本结构,以及生成调色板的代码。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表