diff --git a/Dockerfile b/Dockerfile index 6032625..1fbeae0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -16,7 +16,7 @@ COPY . . RUN GOOS=linux GOARCH=amd64 go build -ldflags '-w -s' -o bin/platform_linux_amd64 cmd/main/main.go # 第二阶段:运行环境 -FROM ubuntu:24.04 +FROM ubuntu:24.04 AS runner WORKDIR /app diff --git a/README.md b/README.md index 3b8d6d7..21754bf 100644 --- a/README.md +++ b/README.md @@ -22,6 +22,8 @@ - [ ] Limiter - [ ] Compress +授权过期跳转登录,成功后返回原链接 + 错误处理类型转换失败问题 callback 结果直接由 api 端提供,不通过前端转发 diff --git a/docs/todo.txt b/docs/todo.txt new file mode 100644 index 0000000..5bf7d58 --- /dev/null +++ b/docs/todo.txt @@ -0,0 +1,31 @@ + +主要流程: + + +1. 注册与登录,正常发送验证码,登录后首页可进控制台 + +2. 实名认证,后台实名认证页面进入,手机扫码认证,成功后电脑端点击完成认证 + +3. 充值或购买,后台购买套餐或首页产品订购进入, + 支付方式:不支持微信,支付宝需要沙箱版APP扫码支付 + 价格:每IP每5分钟 0.01 元,三分钟的按五分钟的半价算 + +4. 提取 IP,购买成功后从弹窗或后台IP提取页进入, + 不选择套餐会提示错误 + 打开链接后如果没有认证或没有在白名单内会提示错误 + +5. 连接,根据提取结果连接代理正常可用 + + + +其他功能完整页面: + + +实名认证,如果没有认证,可以点击认证进入认证流程,如果已认证显示已完成实名认证 + +白名单,添加本机IP后才能提取IP + +我的帐单,能正确显示支付情况和金额,待支付订单目前只展示,不能打开继续支付 + +我的套餐,使用后正确显示用量和最近使用时间,包时套餐正确显示相对到期时间 + diff --git a/web/handlers/iden.go b/web/handlers/iden.go index 5d61398..bc53755 100644 --- a/web/handlers/iden.go +++ b/web/handlers/iden.go @@ -120,12 +120,12 @@ func IdentifyCallback(c *fiber.Ctx) error { } // 获取 token - infoStr, err := rds.Client.GetDel(c.Context(), idenKey(req.Id)).Result() + infoStr, err := rds.Client.Get(c.Context(), idenKey(req.Id)).Result() if err != nil { if errors.Is(err, redis.Nil) { return c.JSON(IdentifyCallbackRes{ - Success: false, - Message: "认证已过期", + Success: true, + Message: "认证已完成", }) } return err @@ -178,6 +178,12 @@ func IdentifyCallback(c *fiber.Ctx) error { return err } + // 删除认证中间状态 + err = rds.Client.Del(c.Context(), idenKey(req.Id)).Err() + if err != nil { + return err + } + return c.JSON(IdentifyCallbackRes{ Success: true, Message: resp.Result.Desc,