一句话生成的云相册应用

举报
wdxb 发表于 2026/08/16 15:57:38 2026/08/16
【摘要】  云相册应用作品地址:开发者作品展览馆 https://gallery.developer.huaweicloud.cn/gallery/058412f7-79ed-4dda-803a-2bb44fe27604作品简介:基于Node.js和Express构建的轻量级云相册应用,支持用户注册登录、照片上传管理及在线预览,提供完整的相册管理体验。云相册应用项目简介云相册应用是一个基于 Node...
云相册应用 preview

云相册应用

项目简介

云相册应用是一个基于 Node.js + Express 构建的轻量级在线照片管理系统。用户可以注册账号、登录系统,上传自己的照片(支持 jpg、png、gif、webp 格式),在响应式相册网格中浏览所有照片,点击查看全屏预览,以及删除不需要的照片。

系统架构

系统架构图

应用采用经典的三层架构设计:

  • 前端展示层:使用原生 HTML/CSS/JavaScript,无需任何前端框架。登录注册页面采用卡片式布局,相册页面使用响应式网格展示照片缩略图。
  • 后端服务层:基于 Express 框架,提供用户认证(bcrypt 密码哈希 + express-session 会话管理)、照片上传(multer 处理 multipart 文件)、相册管理(CRUD API)等核心功能。
  • 数据存储层:使用 SQLite 嵌入式数据库存储用户信息和照片元数据,文件系统(uploads/ 目录)存储实际照片文件。

核心功能

1. 用户注册与登录

用户通过用户名、邮箱和密码进行注册。密码使用 bcrypt 进行哈希存储,确保安全性。登录后通过 express-session 维持会话状态,未登录用户自动跳转到登录页面。

2. 照片上传

支持 jpg、png、gif、webp 四种图片格式,单文件最大 10MB。提供拖拽上传和点击选择两种方式,使用 multer 中间件处理文件上传。

3. 相册展示

以响应式网格布局展示用户上传的所有照片,每张照片显示文件名、上传时间和文件大小信息。界面采用蓝白配色,简洁现代。

4. 照片管理与预览

用户可以删除自己的照片(权限隔离,仅能操作自己的照片)。点击任意照片可弹出全屏模态预览,支持 ESC 键关闭。

技术栈

技术 用途
Node.js + Express Web 服务器框架
better-sqlite3 SQLite 数据库驱动
bcrypt 密码哈希加密
multer 文件上传处理
express-session 会话管理
原生 HTML/CSS/JS 前端界面

项目亮点

  • 零框架依赖前端:使用原生 JavaScript 实现,无需 React/Vue 等框架,加载快、依赖少
  • 安全可靠:bcrypt 密码哈希、session 鉴权、用户数据隔离
  • 响应式设计:适配不同屏幕尺寸,移动端友好
  • 拖拽上传:支持拖拽文件到上传区域,提升用户体验
  • 全屏预览:模态框全屏查看照片,ESC 快捷关闭
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。