Skip to content

基于金山文档的网站项目,使用简单,零成本部署,解决跨域问题。提供前端和后端开源方案和设计思路。

Notifications You must be signed in to change notification settings

imoki/imoki.github.io

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🌐 金山博客系统

基于「金山文档」的博客系统 | 零成本·极简单·云存储方案

🍻 交流渠道

B站:无盐七
QQ群:963592267
公众号:默库

🎊 简介

零成本、无需懂代码部署博客系统

  1. 若github pages部署纯前端网页,缺乏后端数据支持,若增加后端服务器又可能增加维护成本。
    本项目利用金山文档,通过全链条零成本设计方案,实现无需服务器,又可具备一定后端处理能力的网站项目,增加可玩性。
  2. 由于若采用官网提供的webhook + 令牌方式部署网页会出现跨站问题,因此需要一层中介来解决此类问题。
    本项目使用金山文档与前端网页之间增加一层中间层,从而解决了跨站问题,中间层采用github issues实现。
  3. 为了增加安全性,以避免暴露金山文档后台。
    采用github pages + github issues + 金山云文档的形式,实现具备一定的安全性、交互性的网站。
  4. 为了实现数据存储和数据处理。
    采用金山云文档平替代“云数据库”,采用Airscript脚本进行数据处理。
  5. 提高扩展能力。
    本项目设计思路可实现更过有趣功能噢~

✨ 特性

- 📀 解决CORS跨域问题
- 💿 低代码部署,部署简单
- ♾️ 零成本方案
- 💽 文章发布简单,采用增量更新,效率较高
- 🔥 支持airscript 1.0

📺️ 视频教程

https://www.bilibili.com/video/BV1kf59zkE9C

🛰️ 文字部署步骤

  1. 显示层:fork或直接复制项目代码到你的仓库,仓库名为xxx.github.io。(这里的xxx为你github的昵称。自动会启用github page。)
  2. 修改代码开头提示的配置:仅改动script.js和services.js开头(需要修改的部分)部分即可
  3. 数据层:将services.js脚本复制到金山文档Airscript脚本编辑器中(需要airscript 1.0环境),添加网络API,首次运行会自动生成表格,填写此表格,再运行即可发布文章。之后要更新文章,直接修改表格后运行services.js脚本即可更新成功。
  4. 此时就可以访问到你的WEB项目啦。 访问:https://xxx.github.io

⭐ 架构说明

三级设计方案:显示层 - 中间层 - 数据层
前端 - 采用Github Pages进行部署(index.html、script.js、style.css)
中间层 - 采用Github Issues进行缓存
后端 - 采用金山云文档进行存储和处理(services.js)

🌈 业务流程

前端处理流程
对中间层数据进行处理,并渲染出文章等数据 - 拿文章

后端处理流程 读取金山文档表格,对表格数据处理后,同步到中间层 - 发文章
对于“文章表”文章置为“不发布”采用虚删方式,仅将github issues内容置空,不删标题 - 删文章 通过一致性校验检测内容变动,仅对变化的部分进行更新,提高执行效率 - 增量更新

🧾文件说明

“[博客_配置]” - 是博客项目的配置
“[博客_文章]” - 是博客项目的文章
“GITHUB TOKEN“ - 在金山文档的”配置“表中填写,这是操控你仓库的认证信息,这是隐私信息,请不要泄露。
”文章“ - 在金山文档的”文章“表中填写,支持html格式。填写完运行后端脚本即可发布文章
“GITHUB TOKEN”获取方式 - 在 https://github.com/settings/tokens 选择 “Generate new token (classic) “,生成token

🤝 欢迎参与贡献

欢迎各种形式的贡献

✨ Star 数

📝 更新日志

  • 2025-04-25
    • 修复后端发布文章问题
  • 2025-04-21
    • 推出基于金山文档的博客系统

About

基于金山文档的网站项目,使用简单,零成本部署,解决跨域问题。提供前端和后端开源方案和设计思路。

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published