从零到一打造兰空图床随机图片 API:我的开源项目分享
大家好,我是这个兰空图床随机图片 API 系统的开发者。今天很兴奋能和大家分享这个项目的开发故事和使用技巧。如果你是兰空图床的用户,又想给图片管理加点 "随机惊喜",那这个工具可能正是你需要的。
项目诞生的初衷
用兰空图床管理图片已经有一段时间了,作为一个开发者,经常需要在博客、项目演示中插入随机图片。但官方 API 并没有提供随机获取功能,每次都要手动复制图片链接,实在太麻烦了。于是我萌生了一个想法:能不能开发一个工具,让兰空图床的图片也能支持随机调用?
经过几周的开发和测试,这个兰空图床随机图片 API 系统终于成型了。它不仅能实现基础的随机图片功能,还支持多种随机模式,满足不同场景的需求。
核心功能:三种随机模式任你选
最核心的功能当然是随机图片调用,我设计了三种不同的随机模式,你可以根据需要选择:
模式 1:纯随机(默认)
完全随机选择图片,每次请求都是独立的随机结果。适合需要每次都有新鲜感的场景,比如博客横幅、网站背景等。模式 2:顺序随机
不重复随机显示图片,直到相册中所有图片都展示过一遍后,才会重新开始循环。非常适合展示作品合集,确保每个作品都能被平等展示。模式 3:洗牌随机
生成固定的随机序列,每轮都会按照相同的顺序显示图片。既保留了随机性,又保证了展示顺序的一致性,适合需要稳定随机效果的场景。
技术架构:轻量但可靠
考虑到易用性和部署成本,我选择了轻量级的技术栈:
后端:Node.js + Express + SQLite3
无需复杂的数据库配置,SQLite3 文件型数据库即可满足需求,部署更简单。前端:Vue 3 + Vue Router + Vite
打造流畅的管理界面,操作直观易懂。安全层:AES-256-CBC 加密、Session 认证、CORS 白名单、请求限流
虽然轻量,但安全措施一点不少,保护你的图片资源安全。
简单三步,轻松上手
使用流程非常简单,只需三步即可完成:
用你的兰空图床地址和 API Token 登录系统
选择需要生成随机 API 的相册
创建 API 并复制链接,直接使用
支持对 API 接口进行管理,包括启用 / 禁用、删除等操作,灵活控制你的图片资源。
部署方式:多种选择任你挑
无论是本地测试还是生产环境部署,都有对应的方案:
本地部署:只需克隆代码、安装依赖、配置环境变量,启动服务即可。
生产环境:提供 Nginx 配置方案,确保服务稳定运行。
长期运行:推荐使用 PM2 进程管理器,或通过宝塔面板管理,轻松实现开机自启。
环境变量配置也很简单,主要需要设置服务端口和两个安全密钥,通过一行命令即可生成安全的 32 位密钥:
bash
node -e "console.log(require('crypto').randomBytes(32).toString('hex'))"
多人共享,数据隔离
虽然一个人搭建,但系统支持多用户使用。每个人用自己的兰空图床 Token 登录,数据相互隔离,安全可靠。非常适合团队内部共享使用,或者个人搭建后分享给朋友。
立即体验
如果你想先体验一下效果,可以访问我们的演示站点:https://imgapi.15o.cc/
(注意:演示站点数据不保证长期保存,重要数据请自行部署使用)
如果你喜欢这个项目,欢迎到 GitHub 给我们点个 Star:https://github.com/hloolx/LskyRandImgAPI
项目采用 MIT 许可证开源,你可以自由使用、修改和分发。
写在最后
这个项目的开发初衷就是解决自己使用中的痛点,希望它也能帮到有类似需求的朋友。如果你在使用过程中有任何问题或建议,欢迎通过 GitHub Issues 联系我。
开源的意义就在于共享和进步,期待你的反馈,让这个工具变得更好!