一个提供注册码生成和验证的系统
文档介绍:https://ftyszyx.github.io/feishu-vitepress/Az6dd7PeSomasjxtphxchUqxnOg https://blog.bytefuse.cn/Az6dd7PeSomasjxtphxchUqxnOg
最近写了一个pc端的程序,考虑如何通过软件获取收益呢?
一般的方案通过软件注册码的方式。
- 用户下载软件无门槛
- 软件有一定的试用期,在试用期内可以免费使用
- 如果超过试用期,打开软件时需要填写注册码。
- 注册码需要软件开发者提供,每个注册码会有时间限制,也可以是不限时间。
搜索了一些目前开源的方案:
- kamiFaka:https://github.com/Baiyuetribe/kamiFaka (注册码生成方式不满足需求)
- dujiaoka: https://github.com/assimon/dujiaoka (注册码生成方式不满足需求)
- xxgkamiexe: https://github.com/xiaoxiaoguai-yyds/xxgkamiexe (基本满足需求,可是无试用期)
其中xxgkamiexe大部分满足,但是没有实现试用期的功能 所以自己实现了一个。
整个系统采用前后端分离设计。
- 前端就是一个管理员后台,使用vue3.
- 后端:最近在学 rust,想拿一个项目练手,所以就用 rust了。 web框架使用salvo: https://github.com/salvo-rs/salvo
- 先不加入支付,只用实现注册码生成和验证接口即可。
admin: 前端代码
server: 后端rust代码
pub: 服务器部署相关
需要有redis和postgres环境 数据库文件在pub/deploy/postgres/init.sql 初始账号密码:admin/admin
修改.env.example为.env 配置其中的参数
cd server
cargo run
需要有node.js环境
cd admin
npm run dev
切到pub目录下
需要有docker 环境
修改.env.example为.env 配置其中的参数
cd pub
update_server.sh
需要nginx配置
location / {
try_files $uri $uri/ /index.html;
}
编译生成对应的前端资源
python build_web.py --base-url {your server_url}
将目录下的资源同步到网站目录即可
rsync -avz web/ /opt/1panel/www/sites/index/
生成的注册码
如果是试用用户,可以不填注册码
返回内容
{
"code": 0,
"message": "success",
"data": {
"code_type": 0,
"expire_time": "2025-10-21T07:37:54.307715500Z",
"remaining_count": null
},
"success": true
}此时后台可以查到用户的试用信息
填注册码
返回
{
"code": 0,
"message": "success",
"data": {
"code_type": 0,
"expire_time": "2026-06-21T07:39:51.714245400Z",
"remaining_count": null
},
"success": true
}后台可以查询到注册码已经使用
邮箱:whyzi@qq.com
qq: 2246855973
qq群: 572194495
公众号
- 角色权限管理









